시프트 연산자 >>

당근한박스·2024년 1월 16일
0

C++

목록 보기
15/23

>>=
비트 오른쪽 시프트 연산자와 할당 연산자(=)가 결합된 것으로, 현재 변수의 값을 지정된 비트 수만큼 오른쪽으로 이동한 뒤 그 결과를 다시 변수에 할당하는 역할을 한다.

tempValue >>= 1;
tempValue의 값(모든 비트)을 오른쪽으로 한 자리씩 이동시키는 것을 의미한다. 이런 이동 연산은 2로 나누는 효과를 가지며 그 결과로 tempValue는 현재 비트 중 가장 오른쪽에 있던 비트가 삭제되고 한 자리씩 오른쪽으로 밀려난다.
Ex)
tempValue가 9일 때 2진수로 표현하면 1001
tempValue >>= 1;을 수행하면 tempValue는 100이 되고 이는 9를 2로 나눈 결과와 같다.
즉, tempValue가 비트 오른쪽으로 한 자리 이동하여 값을 반으로 줄인 것.

0개의 댓글