#include <iostream>
using namespace std;
int main()
{
char num=0x64;
printf("numdec====%d======\n",num);
//分别取第8、7、6、5bit位
int a= (num & 0x80)>>7;
int b= (num & 0x40)>>6;
int c= (num & 0x20)>>5;
int d= (num & 0x10)>>4;
int e= (num & 0x08)>>3;
int f= (num & 0x04)>>2;
int g= (num & 0x02)>>1;
//获取1-4bit位
int h= (num & 0x0f);
printf("bit8====%d======\n",a);
printf("bit7====%d======\n",b);
printf("bit6====%d======\n",c);
printf("bit5====%d======\n",d);
printf("bit4====%d======\n",e);
printf("bit3====%d======\n",f);
printf("bit2====%d======\n",g);
printf("h====%d======\n",h);
return 0;
}
运行结果如下:
root@debian:~/code# g++ test.cpp
root@debian:~/code# ./a.out
numdec====100======
bit8====0======
bit7====1======
bit6====1======
bit5====0======
bit4====0======
bit3====1======
bit2====0======
h====4======