728x90
반응형

비트 이동 연산자 (Bit Shift Operator)

비트 이동 연산자 (Bit Shift Operator) 는 C 언어에서 비트 단위의 데이터를 조작할 때 사용됩니다.

이 연산자는 특정 값을 왼쪽이나 오른쪽으로 지정된 비트 수만큼 이동시키며, 다음과 같은 형식을 가집니다:

  • 왼쪽 이동 연산자 (<<): 결과값 = 처리할값 << 이동할비트수;
  • 오른쪽 이동 연산자 (>>): 결과값 = 처리할값 >> 이동할비트수;

이때, 비트의 방향은 왼쪽 끝이 최상위 비트(MSB), 오른쪽 끝이 최하위 비트(LSB)로 정의됩니다.

따라서, 왼쪽 이동은 비트를 MSB 방향으로, 오른쪽 이동은 LSB 방향으로 이동시키는 것을 의미합니다.

예시:

c

#include <stdio.h>

int main() {
    unsigned int value = 1; // 0000 0001
    unsigned int result;

    result = value << 2; // 0000 0100
    printf("왼쪽으로 2비트 이동: %u\n", result);

    result = value >> 1; // 0000 0000
    printf("오른쪽으로 1비트 이동: %u\n", result);

    return 0;
}

위 코드에서 value는 1로 초기화되며, 이는 이진수로 0000 0001입니다.

value << 2는 비트를 왼쪽으로 2비트 이동시켜 0000 0100 이 되며, 이는 10진수로 4입니다.

반대로, value >> 1은 비트를 오른쪽으로 1비트 이동시켜 0000 0000 이 되며, 이는 10진수로 0입니다.

이러한 비트 이동 연산자는 비트 단위의 조작이 필요한 상황에서 유용하게 활용됩니다.

728x90
반응형

+ Recent posts