728x90
반응형

비트 연산자에는 AND, OR, XOR 뿐만 아니라 LEFT SHIFT, RIGHT SHIFT , NOT 연산자와 같이 많은 연산자들이 있다.

비트 연산자 중에서 AND 연산자OR 연산자, XOR 연산자, NOT 연산자를 사용하는 방법에 대해 정리해보았다.

 

AND 연산자 ( A & B )

AND 연산자둘 다 '참' 일 경우 을 반환한다.
예를 들어
0 & 1 = 0
1 & 1 = 1

#include <iostream>
#include <bitset>

using namespace std;

int main(){
	int A = 5, B = 15;
	
	cout << A << "의 2진수 : " << bitset<4>(A) << "\n";
	cout << B << "의 2진수 : " << bitset<4>(B) << "\n";
	
	cout << A << "와 " << B << "의 AND 연산 : " << (bitset<4>(A & B)) << "\n";
			
	return 0;
}
5의 2진수 : 0101
15의 2진수 : 1111
5와 15의 AND 연산 : 0101

 


OR 연산자 ( A | B )

OR 연산자 둘 중 하나라도 '참' 일 경우 을 반환한다.
예를 들어
0 | 0 = 0
0 | 1 = 1
1 | 0 = 1
1 | 1 = 1

#include <iostream>
#include <bitset>

using namespace std;

int main(){
	int A = 5, B = 15;
	
	cout << A << "의 2진수 : " << bitset<4>(A) << "\n";
	cout << B << "의 2진수 : " << bitset<4>(B) << "\n";
	
	cout << A << "와 " << B << "의 OR 연산 : " << (bitset<4>(A | B)) << "\n";
			
	return 0;
}
5의 2진수 : 0101
15의 2진수 : 1111
5와 15의 OR 연산 : 1111

 


XOR 연산자 ( A ^ B )

XOR 연산자 두 값이 '다를' 경우 을 반환한다.
예를 들어
0 ^ 1 = 1
1 ^ 0 = 1

#include <iostream>
#include <bitset>

using namespace std;

int main(){
	int A = 5, B = 15;
	
	cout << A << "의 2진수 : " << bitset<4>(A) << "\n";
	cout << B << "의 2진수 : " << bitset<4>(B) << "\n";
	
	cout << A << "와 " << B << "의 XOR 연산 : " << (bitset<4>(A ^ B)) << "\n";
			
	return 0;
}
5의 2진수 : 0101
15의 2진수 : 1111
5와 15의 XOR 연산 : 1010

 


NOT 연산자 ( ~A )

AND 연산자 둘 다 '참' 일 경우 을 반환한다.
예를 들어
~0 = 1
~1 = 0

#include <iostream>
#include <bitset>

using namespace std;

int main(){
	int A = 5, B = 15;
	
	cout << A << "의 2진수 : " << bitset<4>(A) << "\n";
	cout << B << "의 2진수 : " << bitset<4>(B) << "\n";
    
	cout << A << "의 NOT 연산 : " << (bitset<4>(~A))<< "\n";
	cout << B << "의 NOT 연산 : " << (bitset<4>(~B))<< "\n";
			
	return 0;
}
5의 2진수 : 0101
15의 2진수 : 1111
5의 NOT 연산 : 1010
15의 NOT 연산 : 0000

 

 

참고 사이트

https://riptutorial.com/ko/cplusplus/example/8514/----%EB%B9%84%ED%8A%B8-xor--%EB%B0%B0%ED%83%80%EC%A0%81-%EB%85%BC%EB%A6%AC%ED%95%A9-

https://ko.khanacademy.org/computing/computer-science/cryptography/ciphers/a/xor-bitwise-operation

https://selfc.tistory.com/10

728x90
반응형
복사했습니다!