Python3 비트마스크
[Python] 비트 연산
[Python] 비트 연산
2021.02.06[Python] 비트 연산 Python3 비트 연산이 C/C++과는 조금 차이가 있는 것 같아서 비트 연산자에 대해서 다루어 보려고 한다. 다음과 같은 명령문이 있을 때 출력 결과를 살펴보도록 하자. >>> bin(0b0101 ^ ~0b1100) '-0b1010' 반환 값은 문자열이며 bin 함수를 통해서 2진수로 출력되었다. 또한 앞에 - 부호가 들어간 것을 알 수 있다. 크기는 10이다. 나는 처음 결과를 생각하기를 ~0b1100 은 0b0011이 되겠거니 생각을 해서 (0b0101 ^ 0b0011) XOR 연산 결과 '0b0110' 라고 단순히 생각을 했다. 보기와 다르게 결과는 그렇지 않다. 그렇다면 어디가 잘못된 것일까? ~연산자를 이해하기 위해서는 2의 보수를 이해하고 있어야 한다. 잠시 다음..