728x90
프로그램을 짜다보면 & | ^ ! >> << 같은 기호를 볼 때가 많다. 프로그래밍을 시작한지 얼마 되지 않았을 때에는 생소하지만 나중에는 쓸모가 많은 연산자들이므로 한 번 알아보자.
참과 거짓은 각각 1,0으로 부른다.
& 연산자
and 연산자라고 불린다. 입력값 A,B 둘 다 1인 경우에만 1이 나온다.
논리식은 Y=AB로 논리곱이라고 부른다.
A | B | Y |
0 | 0 | 0 |
1 | 0 | 0 |
0 | 1 | 0 |
1 | 1 | 1 |
| 연산자
or 연산자라고 부른다. 입력값 A,B 둘 중 하나가 1인 경우 1이 출력된다.
논리식은 Y=A+B로 논리합이라고 부른다.
A | B | Y |
0 | 0 | 0 |
1 | 0 | 1 |
0 | 1 | 1 |
1 | 1 | 1 |
^ 연산자
xor연산자라고 부른다. xor은 exclusive or의 준말이다. 입력값 A,B가 서로 다른 경우만 1이 나온다.
논리식은 Y = AB'+A'B = A⨁B이다.
A | B | Y |
0 | 0 | 0 |
1 | 0 | 1 |
0 | 1 | 1 |
1 | 1 | 0 |
! 연산자
not 연산자라고 부른다. 입력값 A의 반대가 출력된다.
논리식은 Y=A'이다.
A | Y |
0 | 1 |
1 | 0 |
>>, << 연산자
bitshift 연산자다. A >> B일 때 A를 이진수로 변환한 비트를 화살표 방향으로 B만큼 이동시킨다. 정수부분만 존재하기 때문에 >> 연산자를 이용해서 연산을 시켜도 소수값은 변하지 않는다.
ex)
3 << 2
011 -> 110 -> 1100
728x90
'프로그래밍 > 프로그래밍 지식' 카테고리의 다른 글
[프로그래밍 지식] 재귀 함수란? (0) | 2023.11.24 |
---|---|
[프로그래밍 지식] int형 sort와 str형 sort의 차이 (0) | 2023.02.24 |
[프로그래밍 지식] 왜 max값은 제일 작은 수, min값은 제일 큰 수로 해야 할까? (0) | 2023.02.19 |
[프로그래밍 지식] 프로그램이 가독성이 떨어지고 너무 길 때 (3) | 2023.02.19 |
댓글