Know/Java
ExclusiveOR 연산자의 번외게임
Marine™
2005. 3. 17. 11:42
반응형
a와 b 서로 바꾸기
(1) a ^= b;
(2) b ^= a;
(3) a ^= b;
: 정수에서만 가능하다.
4비트만가지고 테스트해보면..
a : 1101
b : 1010
a ^= b : 0111
a : 0111
b : 1010
b ^= a : 1101 (처음의 a값과 같다)
a : 0111
b : 1101
a ^= b : 1010 (처음의 b값)
즉 이것은.. 아래와 같다..(라고 생각한다..)
맞는지는 모르겟따...
(1) a = a ^ b -> t1
(2) b = b ^ t1 -> t2 = b ^ a ^ b = b ^ b ^ a = 0000 ^ a = a
(3) x = a ^ b = t1 ^ t2 = t1 ^ t1 ^ b = 0000 ^ b = b
반응형