반응형
피연산자1의 i번째 비트 | 피연산자2의 i번째 비트 | 결과 값의 i번째 비트 | ||
AND | OR | XOR | ||
0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 1 |
1 | 0 | 0 | 1 | 1 |
1 | 1 | 1 | 1 | 0 |
피연산자1의 i번째 비트 | 결과 값의 i번째 비트 |
NOT | |
1 | 0 |
0 | 1 |
여기서 XOR은 실무에서 매우 다양하게 사용됩니다.
AND, OR, NOT은 논리연산자의 AND, OR, NOT과 개념이 동일 하다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include <bitset> #include <iostream> using namespace std; int main(){ char c = 1; short int si = 2; int i = 4; cout << "c = " << bitset<8>(c) << "(" << (int)c << ") \n"; cout << "si = " << bitset<16>(si) << "(" << si << ") \n"; cout << "i = " << bitset<32>(i) << "(" << i << ") \n"; return 0; } | cs |
정수 값을 2진수로 출력해보았다.
c는 char을 2진수로 출력해보았다.
si는 short int를 2진수로 출력해보았다.
i는 int를 2진수로 출력해보았다.
비트 연산을 할 때 반드시 아래와 같은 라이브러리가 include되어야한다.
#include <bitset>
이 라이브러리가 include 안되어 있으면 아래와 같은 오류 메세지가 뜬다.
반응형
'공부 > 개발노트' 카테고리의 다른 글
[C/C++] XOR 연산을 이용해서 a와 b 값을 바꾸기 (0) | 2016.08.16 |
---|---|
[C/C++] 비트 단위 논리 연산자의 사용 (0) | 2016.08.16 |
[C/C++] 논리연산자 AND와 OR 함께 사용하기 (0) | 2016.08.13 |
[C/C++] 논리 연산자(AND) 사용 (0) | 2016.08.13 |
[C/C++] 관계 연산자 사용해보기 (0) | 2016.08.13 |