1、bit 位:位是计算机中存储数据的最小单位,指二进制数中的一个位数,其值为“0”或“1”。
2、byte 字节:字节是计算机存储容量的基本单位,一个字节由8位二进制数组成。在计算机内部,一个字节可以表示一个数据,也可以表示一个英文字母,两个字节可以表示一个汉字。 1B=8bit
简单说就是,计算机使用二进制,比如:11010110,每个1或者0就是1个比特(bit),上面的11010110这8个1或者0就是一个字节(B)。
3、使用 位与(&) 运算可以取字节中的某些特定位。
如 ch&0x01 取第一个比特位
ch&0x72 取第二个以及第五、六、七个比特位
对于10110011,11100000,如何把第一个字节的前(高)3位和后一个字节的后(低)5位重新组成个字节00000101
以num1=10110011
num2=11100000
则 num = ((num2 & 0x1f)<<3) | ((num1 & 0xe0)>>5);
参考:http://bbs.csdn.net/topics/40453922
参考:https://ruby-china.org/topics/22317