A와 B가 8bit 숫자일때 A와 B의 값을 바꾸는 함수

김포프 2011-08-28
블로그 방문자중 다음과 같은 키워드로 검색한 사람이 있어서 서비스겸 답을 올림...(아마 예전에 북미취업 가이드에서 면접 질문 예제를 올릴 것 때문에 검색 hit가 된듯..)

A와 B가 8bit 숫자일때 A와 B의 값을 바꾸는 함수. 단 새로운 변수를 사용하면 안됨

A = A ^ B  (^는 XOR 임)
B = A ^ B
A = A ^ B

팁: A ^ B는 A | B - A & B 임.. (즉, A나 B, 단 A B 둘다 포함인 것은 제외)
검증: 밴다이어 그램을 그려볼 것