[java] 자바의 비트 연산(Bitwise Operation) 알아보기
비트 연산은 컴퓨터 과학 및 프로그래밍에서 매우 유용한 개념 중 하나입니다. 자바에서는 다양한 비트 연산자를 제공하여 비트 수준에서의 연산을 수행할 수 있습니다.
비트 연산자(Bitwise Operators)
자바에서는 다음과 같은 비트 연산자를 제공합니다:
- AND(&) 연산자: 두 비트가 모두 1일 때만 1을 반환합니다.
-
**OR( ) 연산자**: 두 비트 중 하나라도 1이면 1을 반환합니다. - XOR(^) 연산자: 두 비트가 서로 다르면 1을 반환합니다.
- 보수(NOT ~) 연산자: 비트를 반전시킵니다.
- 왼쪽 시프트(«) 연산자: 지정된 수만큼 비트를 왼쪽으로 이동시킵니다.
- 오른쪽 시프트(») 연산자: 지정된 수만큼 비트를 오른쪽으로 이동시킵니다.
비트 연산의 활용 예시
아래는 여러 비트 연산의 활용 예시입니다:
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)
위의 예시에서, 각각의 비트 연산자가 어떻게 작동하는지를 확인할 수 있습니다.
결론
비트 연산은 주로 성능 향상이나 특정 비트 수준의 조작이 필요한 경우에 사용됩니다. 프로그래머가 비트 연산자를 올바르게 사용하면 메모리 사용량을 줄이고 실행 시간을 단축할 수 있습니다.
더 자세한 내용은 자바 문서를 참고할 수 있습니다.