5

我正在查看这段代码以用 Java 进行计算math.sqrt。为什么他们在某些循环中使用十六进制值和变量的正常值?使用十六进制有什么好处?

4

3 回答 3

28

因为十六进制更接近于十进制数字的位。每个十六进制数字对应于 4 位(一个半字节)。因此,一旦您了解了与每个十六进制数字 (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
于 2009-01-16T20:40:47.797 回答
3

他们可能使用十六进制值,因为十六进制数字更容易记住。例如,0x7fffffff 与 2147483647 相同,但更容易记住。

于 2009-01-16T20:39:17.830 回答
2

十六进制是 CPU 实际使用的一种人类可读的二进制形式。在查看低级命令时,匹配 CPU 并以十六进制思考通常更有意义,

于 2009-01-16T20:45:46.633 回答