[c] 쉬프트 연산자

쉬프트 연산자는 이진수로 표현된 숫자의 비트를 왼쪽이나 오른쪽으로 이동시키는 데 사용됩니다. 이동된 비트는 주어진 횟수와 방향에 따라 이동 후에 0 또는 1로 채워집니다.

« 연산자 (왼쪽 쉬프트)

<< 연산자는 숫자의 모든 비트를 왼쪽으로 이동시킵니다. 각 이동은 해당 숫자를 2배로 만듭니다.

예시:

int x = 5; // 0000 0101
int result = x << 2; // 0001 0100 (20)

» 연산자 (오른쪽 쉬프트)

>> 연산자는 숫자의 모든 비트를 오른쪽으로 이동시킵니다. 각 이동은 해당 숫자를 2로 나눕니다.

예시:

int x = 20; // 0001 0100
int result = x >> 2; // 0000 0101 (5)

쉬프트 연산자는 비트 단위 연산이기 때문에 효율적으로 계산을 할 수 있고, 특정 경우에는 코드를 간결하게 만드는 데에 유용합니다.

이러한 쉬프트 연산자를 사용할 때에는 연산의 결과와 데이터의 유실 및 부호 비트 확장에 주의해야 합니다.

더 많은 정보를 원하신다면, 아래 C++ reference를 참고하세요.

C++ Reference - Bitwise Shift Operators