[c++] 비트 시프트 연산자(<<, >>)의 사용 예시
비트 시프트 연산자는 C++에서 비트 단위로 좌우로 비트를 이동시키는데 사용됩니다. <<
연산자는 왼쪽으로 비트를 이동하고, >>
연산자는 오른쪽으로 비트를 이동시킵니다.
비트를 왼쪽으로 이동하는 예시
아래는 <<
연산자를 사용하여 비트를 왼쪽으로 2번 이동하는 예시입니다.
#include <iostream>
using namespace std;
int main() {
int num = 8; // 이진수 표현으로 0000 1000
num = num << 2; // 왼쪽으로 2번 이동
// 이진수로 표현하면 0010 0000이 됨
cout << "이동 후의 값: " << num << endl; // 32 출력
return 0;
}
위의 예시는 num
의 이진수 표현이 0000 1000일 때, <<
연산자를 사용하여 2번 왼쪽으로 이동시키면 0010 0000이 되어 32가 출력되는 것을 보여줍니다.
비트를 오른쪽으로 이동하는 예시
아래는 >>
연산자를 사용하여 비트를 오른쪽으로 3번 이동하는 예시입니다.
#include <iostream>
using namespace std;
int main() {
int num = 32; // 이진수 표현으로 0010 0000
num = num >> 3; // 오른쪽으로 3번 이동
// 이진수로 표현하면 0000 0010이 됨
cout << "이동 후의 값: " << num << endl; // 4 출력
return 0;
}
위의 예시는 num
의 이진수 표현이 0010 0000일 때, >>
연산자를 사용하여 3번 오른쪽으로 이동시키면 0000 0010이 되어 4가 출력되는 것을 보여줍니다.
비트 시프트 연산자는 비트 단위로 효율적인 값을 계산하거나 데이터를 다룰 때 유용하게 사용됩니다.
참고 자료: cplusplus.com - Bitwise Shift Operators