본문 바로가기

C++

[C++] 비트 연산자, 쉬프트 연산자

비트 연산자는 메모리에 직접 접근해서 비트를 계산하는 연산자이다.

종료는 6가지가 있고 쉬프트 연산자도 비트 연산자에 포함된다.

 

~ 비트를 반전시킨다.
& 대응되는 비트가 모두 1  1이다.
| 대응되는 비트가 모두 0  0이다.
^  개의 비트가 달라야 1이다.
<< 지정한 수만큼 왼쪽으로 비트들을 이동시킨다.
>> 지정한 수만큼 오른쪽으로 비트들을 이동시킨다.

 

 

마스크 오프(mask off)

 

&연산은 어떤 비트와 0이 &되는 비트는 무조건 0이되고 1과 &되는 비트는 원래 비트를 유지한다. 

이 연산을 마스크 오프라고 한다.

 

마스크 온(mask on)

|연산은 어떤 비트와 0이 |되는 비트는 원래 비트를 유지하고 1과 |되는 비트는 무조건 1이 된다.

이 연산을 마스크 온이라고 한다.

 

비트에 반전하고 &연산을 하면 특정 자리의 비트만 뺄 수 있다.