Java位运算的问题

来源:互联网 发布:软件私活怎么开价 编辑:程序博客网 时间:2024/05/22 03:20
  • 两个位数不一样的二进制数做位运算时,会补足位数少的那一个数(高位补上0),让它的位数与另外一个二进制数一样再进行运算,得到结果的位数是位数较高的位数
    如:01001011&1101等同于01001011&00001101
  • 一种特殊的情况,当一个超过4位的二进制与0xf(十六进制f)进行与运算时,得到的结果却只是4位的二进制,原因是:0xf的高位补足0后,任何数与它的高位进行与运算,得到的结果都是0,最终结果都会修正(去除高位的0)
    如:01001011&0xf = 01001011&00001111 = 00001011 = 1011
0 0