已采纳回答 / lululululuming331052
8143 二进制表示为 1111111001111,8143>>0*8中0*8的优先级更高,所以这就是对8143右移0位,之后的与运算,结果就是11001111,如果11001111作为无符号数就是207,如果作为有符号数,11001111第一个1,就是表示为负号,根据负数的表示方式 负数为绝对值的补码,11001111转换为原码,先加1,得到11010000,然后取反00101111=49,所以就是-49
2016-08-17
进制转化 主要就是利用位运算 还有&运算 二进制最后三位最大为7 111 所以用7 &运算取出后面三位 再>>>右移3位 重复几次就得到八进制
16进制 二进制后四位 最大15 1111 进行&运算取出后四位的值 然后在>>>右移4位 重复几次就得到16进制的值 不过10开始就是abcd了 用查表法(把0到f存到数组里)就能了 这些运算符自己写点代码试一下就应该会拉
16进制 二进制后四位 最大15 1111 进行&运算取出后四位的值 然后在>>>右移4位 重复几次就得到16进制的值 不过10开始就是abcd了 用查表法(把0到f存到数组里)就能了 这些运算符自己写点代码试一下就应该会拉
2016-08-12
0*8 & 0xff
1*8 & 0xff
2*8 & 0xff
这部为什么要这样写?有什么用?
表示不明白,求解
1*8 & 0xff
2*8 & 0xff
这部为什么要这样写?有什么用?
表示不明白,求解
2016-08-09