最赞回答 / 旧城以东qq
我发现了 11001111 = -49或者207 如果bs[0]中存的是11001111,直接 (int)bs[0]则结果为-49;如果bs[0]&0xff则结果为207,这是为什么 求问?????
2016-08-31
已采纳回答 / lululululuming331052
8143 二进制表示为 1111111001111,8143>>0*8中0*8的优先级更高,所以这就是对8143右移0位,之后的与运算,结果就是11001111,如果11001111作为无符号数就是207,如果作为有符号数,11001111第一个1,就是表示为负号,根据负数的表示方式 负数为绝对值的补码,11001111转换为原码,先加1,得到11010000,然后取反00101111=49,所以就是-49
2016-08-17