[java] 자바의 비트 연산(Bitwise Operation) 알아보기

비트 연산은 컴퓨터 과학 및 프로그래밍에서 매우 유용한 개념 중 하나입니다. 자바에서는 다양한 비트 연산자를 제공하여 비트 수준에서의 연산을 수행할 수 있습니다.

비트 연산자(Bitwise Operators)

자바에서는 다음과 같은 비트 연산자를 제공합니다:

  1. AND(&) 연산자: 두 비트가 모두 1일 때만 1을 반환합니다.
  2. **OR( ) 연산자**: 두 비트 중 하나라도 1이면 1을 반환합니다.
  3. XOR(^) 연산자: 두 비트가 서로 다르면 1을 반환합니다.
  4. 보수(NOT ~) 연산자: 비트를 반전시킵니다.
  5. 왼쪽 시프트(«) 연산자: 지정된 수만큼 비트를 왼쪽으로 이동시킵니다.
  6. 오른쪽 시프트(») 연산자: 지정된 수만큼 비트를 오른쪽으로 이동시킵니다.

비트 연산의 활용 예시

아래는 여러 비트 연산의 활용 예시입니다:

int a = 5;  // 이진수: 0000 0101
int b = 3;  // 이진수: 0000 0011

int andResult = a & b;  // 비트 AND 연산: 0000 0001 (결과: 1)
int orResult = a | b;   // 비트 OR 연산: 0000 0111 (결과: 7)
int xorResult = a ^ b;  // 비트 XOR 연산: 0000 0110 (결과: 6)
int notResult = ~a;     // 비트 보수 연산: 1111 1010 (결과: -6)
int leftShiftResult = a << 1;  // 왼쪽 시프트 연산: 0000 1010 (결과: 10)
int rightShiftResult = a >> 1; // 오른쪽 시프트 연산: 0000 0010 (결과: 2)

위의 예시에서, 각각의 비트 연산자가 어떻게 작동하는지를 확인할 수 있습니다.

결론

비트 연산은 주로 성능 향상이나 특정 비트 수준의 조작이 필요한 경우에 사용됩니다. 프로그래머가 비트 연산자를 올바르게 사용하면 메모리 사용량을 줄이고 실행 시간을 단축할 수 있습니다.

더 자세한 내용은 자바 문서를 참고할 수 있습니다.