비트 연산자 : 비트(bit) 단위로 논리 연산과 이동 할 때 사용하는 연산자

비트 연산자설명
&AND 연산 (대응되는 비트가 모두 1이면 1 반환)
|OR 연산 (대응되는 비트 중 하나라도 1이면 1 반환)
^XOR 연산 (대응되는 비트가 서로 다르면 1 반환)
~NOT 연산 (비트가 1이면 0으로, 0이면 1로 반전)
<<left shift 연산 (지정한 수만큼 비트 모두 왼쪽으로 이동)
>>right shift 연산 (지정한 수만큼 비트 모두 오른쪽으로 이동)

사용 예시

int num01 = 10; int num02 = 8;

		System.out.printf("%s\n",Integer.toBinaryString(num01));
System.out.printf("<< 연산자 : %d.\n", num01 << 1); // 곱하기 2
System.out.printf(">> 연산자 : %d입니다.\n", num01 >> 1); // 나누기 2
System.out.printf("~ 연산자: %d \n", ~num01);
System.out.printf("& 연산자 : %d \n", num01 & num02 );
System.out.printf("| 연산자 : %d \n", num01 | num02 );
System.out.printf("^ 연산자 : %d \n", num01 ^ num02 );
  • left shift 연산은 뒤에 수가 2의 제곱이 된다.
  • 정수로 반환됨
  • 이진법 계산할 때 빠름!

결과

1010
<< 연산자 : 20.
>> 연산자 : 5입니다.
~ 연산자: -11 
& 연산자 : 8 
| 연산자 : 10 
^ 연산자 : 2 

Leave a comment

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다