#include<iostream>
#include<bitset>
using namespace std;
// cout << "默认下" << a << endl;
// cout << "十进制" << dec << a << endl;
// cout << "八进制" << oct << a << endl;//八进制
// cout << "十六进制" << hex << a << endl; //十六进制
// cout << "二进制" << bitset<16>(a) << endl; //输出为十六位二进制数
int main()
{
int a = 12; // 00000000 00001100
int b = 3; // 00000000 00000011
cout << "a: " << bitset<16>(a) << endl;
cout << "b: " << bitset<16>(b) << endl;
cout << "--------------"<<endl;
cout << "~a " << bitset<16>(~a) << endl;
cout << "~b " << bitset<16>(~b) << endl;
cout << "--------------" << endl;
cout << "a & b " << bitset<16>(a & b) << endl;
cout << "a | b " << bitset<16>(a | b) << endl;
cout << "a ^ b " << bitset<16>(a ^ b) << endl; // 相异为一
cout << "--------------" << endl;
cout << "a << 2 " << bitset<16>(a << 2) << endl;
cout << "b >> 2 " << bitset<16>(b >> 2) << endl;
return 0;
}
结果: