为什么使用hex值而不是正常的十进制数?
我正在查看这段代码来计算Java中的math.sqrt
。 为什么他们在某些循环中使用hex值而在变量中使用正常值? 使用hex有什么好处?
因为hex与十进制数的位更接近。 每个hex数字对应于4位(半字节)。 因此,一旦你学会了与每个hex数字(0-F)相关的位掩码,就可以执行类似“我想为低位字节设置掩码”的操作:
0xff
或者,“我想要一个底部31位的掩码”:
0x7fffffff
仅供参考:
HEX BIN 0 -> 0000 1 -> 0001 2 -> 0010 3 -> 0011 4 -> 0100 5 -> 0101 6 -> 0110 7 -> 0111 8 -> 1000 9 -> 1001 A -> 1010 B -> 1011 C -> 1100 D -> 1101 E -> 1110 F -> 1111
他们可能使用hex值,因为数字更容易记住hex。 例如,0x7fffffff与2147483647相同,但更容易记住。
Hex是CPU实际使用的二进制文件的可读forms。 在查看低级命令时,匹配CPU并以hex思考通常更有意义,