티스토리 뷰

 비트 연산자와 비트 이동 연산자는 

비트를 활용한 연산자이다.

 

비트 연산자는 한 개 혹은 두 개의 이진수에 대해 비트 단위로 적용되는 연산이다.

 

&(and):두 비트 모두 1 일 경우 1인 연산자

 ex)   0101 

     &1011

     =1  

 

|(or):두 비트 중 하나라도 1일 경우 1인 연산자

ex)   0101

     ^1011

     =1111 

 

^(xor):두 비트 중 하나만 1일 경우 1인 연산자

ex)   0101

     ^1011

     =1110 

 

~(not):32비트를 기준으로 1일 경우 0 ,0일 경우 1로 바꾸는 연산

 ex) ~0101

     =11111111111111111111111111111010

 

비트이동 연산자는 이진수의 비트를 이동시키는 연산이다.

>>:비트열을 오른쪽으로 이동

 ex)   0101>>1 

     = 0010

<<:비트열을 왼쪽으로 이동 

ex)   0101<<1 

     = 1010

public class bitLogical {

	public static void main(String[] args) {
		int num1 =15;
		int num2 = 8;
		System.out.println("num1의 이진수 :"+ Integer.toBinaryString(num1));
		System.out.println("num2의 이진수 :"+ Integer.toBinaryString(num2));
		System.out.println("num1과num2의 &연산 값 이진수 :"+ Integer.toBinaryString(num1 & num2));
		System.out.println("num1과num2의 |연산 값 이진수 :"+ Integer.toBinaryString(num1 | num2));
		System.out.println("num1과num2의 ^연산 값 이진수 :"+ Integer.toBinaryString(num1 ^ num2));
		System.out.println("num1 값의 << 2 연산 값 이진수 :"+ Integer.toBinaryString(num1 << 2));
		System.out.println("num1 값의 >> 2 연산 값 이진수 :"+ Integer.toBinaryString(num1 >> 2));
		System.out.println("num1 값의 ~연산 값 이진수 :"+ Integer.toBinaryString(~num1));
		
		
	}

}

Integer.toBinaryString는 출력값을 이진수로 표현한다.

 

num1과 num2를  이진수로 표현하면 각각 1111과 1000이다.

이를 대입해 비트 연산을 해보면 

 

&(and): 앞의 1만 서로 같으므로 '1000'

 

|(or): num1이 1111 이므로 '1111'

 

^(xor):첫 부분이 서로 같으므로

'111'

 

<<(비트 오른쪽 이동): 오른쪽으로 2만큼 이동했으므로 

'111100'

 

>>(비트 왼쪽 이동): 왼쪽으로 2만큼 이동했으므로

'11'

 

~(not):32비트를 기준으로 0일 경우 1이고 1일 경우 0이므로 

'11111111111111111111111111110000'

 

 

 

실행화면

                                                      값이 정상적으로 출력된 모습이다.

'웹 프로그래밍 > JAVA' 카테고리의 다른 글

관계 연산자  (0) 2021.01.29
증감 연산자  (0) 2021.01.29
논리 연산자(JAVA)  (0) 2021.01.29
산술 연산자 (JAVA)  (0) 2021.01.29
이클립스 JAVA 프로젝트 생성  (0) 2021.01.29
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함