장래 프로그래머의 블로그
2024.09.29 본문
인공지능을 위한 파이썬 2주차 1회독
인공지능을 위한 파이썬 3주차 1회독
방통대 클라우드 컴퓨팅 11강 [클라우드 아키텍처 2] 1회독
방통대 컴파일러구성 11강 [LALR 구문분석] 1회독
방통대 딥러닝 11강 [RNN(1)] 1회독
오늘 올릴 내용은 내가 좀 생소하게 느껴졌던 연산자 중 비트 연산자이다.
연산자 | 기능 | 예시 (괄호 안은 2진수) | 결과 (괄호 안은 2진수) |
& | 비트 AND | 5(101) & 3(011) | 1(001) |
| | 비트 OR | 5(101) | 3(011) | 7(111) |
^ | 비트 XOR | 5(101) ^ 3(011) | 6(110) |
~ | 비트 NOT (보수) | ~5(0101) | -6(1110) |
<< | 왼쪽 시프트 (Left Shift) | 5(0101) << 1 | 10(1010) |
>> | 오른쪽 시프트 (Right Shift) | 5(0101) >> 1 | 2(0010) |
먼저 비트 AND 연산자는 두 양의 정수를 변환 2진수끼리 연산을 하는 건데
각 자리의 2진수가 모두 0이면 0이 되며 모두 1이 되면 1이 된다.
또한 0과 1이면 0이 된다.
그리고 비트 OR 연산자는 각 자리의 2진수가 모두 0일 경우만 0이 되면
모두 1이거나 각자 2진수가 달라도 1이 된다.
그리고 비트 XOR 연산자는 각 자리의 2진수가 서로 다르면 1이 되며
서로 같으면 0이 된다.
그리고 비트 NOT 연산자는 지금 설명하고 싶지만 나중에 더 알아보고 난 후에 설명하겠다.
다음 왼쪽 시프트 연산자는 왼쪽으로 시프트하라는 연산자다.
다른 말로 2진수로 변한 비트 값을 왼쪽으로 1칸씩 이동하라는 뜻이다.
즉 2진수인 0101를 1칸씩 왼쪽으로 이동하게 되면 1010(즉 10진수로는 10)이 된다.
마지막으로 오른쪽 시프트 연산자는 2진수 비트 값을 오른쪽으로 1칸씩 이동하라는 뜻이다.
0101를 1칸씩 오른쪽으로 이동하게 되면 0010(10진수로는 2)이 된다.
'Today I Learned' 카테고리의 다른 글
2024.10.01 TIL (0) | 2024.10.01 |
---|---|
2024.09.30 (2) | 2024.09.30 |
2024.09.28 (4) | 2024.09.28 |
2024.09.27 (2) | 2024.09.27 |
2024.09.26 (0) | 2024.09.26 |