Java的位运算

@hanq  2015年07月29日 11:17

典型常用数:
00000000 = 0x0 = 0
11111111 = 0xFF = 255
11110000 = 0xF0 = 240
00001111 = 0x0F = 15

取一个值的高4位的值:
byte >> 4 // 代表着将这个byte做右移4位的运算,得到的值就是高4位的值

取一个值的低4位的值
byte & 0x0F // 将这个值与0x0F做位与运算,因为0x0F的高4位都是0,位与的话,会被过滤掉,所有剩下的值就是低4位的值了。

构造一个数据,高4位用一个值,低4位用一个值
byte aimByte = 0x0;// 干净的目标,即00000000
byte sourceHigh = 0xF0;// 高4位目标值
byte sourceLow = 0x0F;// 低4位的目标值
aimByte = (byte) ((aimByte | sourceHigh) | sourceLow);// 位或运算,将源数据插入到目标中。


添加新评论