Backend/JAVA2 멘토시리즈

JAVA Eclipse 05 논리연산자, 비트연산자

쏠솔랄라 2023. 3. 15. 16:03

 

 

연산자 우선순위

우선 연산자 [ ], ( )
항 연산자 !, ~, +, -, ++
술 연산자 +, -, *, /, %
프트 연산자 <<, >>
계 연산자(비교연산자) <, >, ==, !=
 연산자 &&, ||
항 연산자 (조건)? 참:거짓
입 연산자 =, +=, -=

 

 

논리연산자

: 여러가지 조건을 동시에 검사할 때 사용하는 연산자

두 조건의 값이 boolean일 대 연산 가능

 

 

논리연산자의 종류

종류 연산자 설명
AND && a && b a가 참이고 b가 참이면 참
OR || a || b a가 참이거나 b가 참이면 참
NOT ! !a a가 참이면 거짓, 
a가 거짓이면 참

 

 

비트연산자

: 비트단위로 연산 하는 연산자

 

비트? (bit)

: 데이터의 최소단위

1byte = 8bits

 

 

비트 논리연산자

종류 연산자 설명
비트 AND & a & b a가 1이고 b가 1이면 결과는 1
비트 OR | a | b a가 1이거나 b가 1이면 결과는 1
비트  XOR ^ a^b a와 b가 서로 다르면 1, 같으면 0
비트 NOT ~ ~a a가 1이면 0, 0이면 1

 

 

비트연산자

 

10진수의 2진수 변환

몫이 1이 될 때까지 나눈 후 거꾸로 올라오기

 

2진수의 10전수 변환

각 자리의 값이 1의 2승으로 변환한다

 

2진수의 덧셈 연산

ex.

15: 1111[2]

5: 0101[2]

15 & 5 ? 5: 0101[2]

~5 = -6; 부호비트

 

 

비트 쉬프트 연산자

쉬프트 연산 = 비트 이동 연산

종류 연산자 설명
왼쪽 쉬프트 << a << n a의 비트를 왼쪽으로 n만큼 이동
오른쪽 쉬프트 >> a >> n a의 비트를 오른쪽으로 n만큼 이동

ex.

15 = 1111 [2]
15 >> 2
1111 [2] >> 2
= 0011 [2]

= 3

 

ex2.

5 << 4
5 = 0101 [2]
0101 [2] << 4
= 0101 0000 [2]
= 80

 

 


 

 

JAVA Eclipse 01 프로그램, 프로그래밍, 기계어, JAVA
https://developernew.tistory.com/63

JAVA Eclipse 02 자바 출력메서드와 입력메서드
https://developernew.tistory.com/71

JAVA Eclipse 03 변수, 자료형, 형변환, 변수의 상수화
https://developernew.tistory.com/74

JAVA Eclipse 04 연산자 정의, 연산자 종류, 연산자 우선순위
https://developernew.tistory.com/78