我正在查看this code以計算在Java中的math.sqrt
。爲什麼他們在一些循環中使用十六進制值,在變量中使用正常值?有什麼好處使用十六進制?爲什麼使用十六進制值而不是普通的10位數字?
5
A
回答
27
因爲十六進制與十進制數字的位數更接近。每個十六進制數字對應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
3
他們可能使用了十六進制值,因爲數字在十六進制中更容易記住。例如,0x7fffffff與2147483647相同,但更容易記住。
2
六角是CPU實際上使用二進制的人類可讀形式。在查看低級命令時,匹配CPU並以十六進制表示通常更有意義,
相關問題
- 1. O_APPEND的十六進制值是什麼?
- 2. 什麼是十六進制?
- 3. 將10位數字轉換爲十六進制字符串
- 4. 爲什麼使用十六進制?
- 5. 使用十六進制而不是十進制更有效嗎?
- 6. 十六進制值的字符串格式爲十六進制數字排序
- 7. 爲什麼typeof十六進制數或二進制數Uint64,而十進制數的類型是Int64?
- 8. C#:ASCII到十六進制:輸出十六進制爲「01」而不是「1」
- 9. 爲什麼stroull()不適用於具有十六進制值的字節數組?
- 10. 將十進制值轉換爲32位浮點十六進制
- 11. HOWTO轉換UWORD的下部10位爲十六進制用C
- 12. 使用十六進制值操作時不能使用十六進制功能
- 13. 爲什麼這個十六進制值作爲負數輸出?
- 14. cout打印十六進制而不是十進制
- 15. 價值爲十六進制
- 16. 轉換十六進制字符串十六進制值
- 17. 指定十六進制值爲字符
- 18. 爲什麼我們有時使用十進制的十六進制格式?
- 19. 將十六進制拆分爲2個十六進制值
- 20. 將十進制轉換爲十六進制和十六進制
- 21. 將4字節十六進制轉換爲十進制值
- 22. VB.Net - 將多字節十六進制值轉換爲十進制
- 23. 如何在Nokia 6100上顯示24位RGB十六進制而不是12位十六進制
- 24. 如何讀取文件中的32位十六進制字作爲C#中的十六進制值而不是字符串(「e000483c」爲「0xe000483c」)
- 25. 爲什麼使用十六進制數組索引
- 26. C# - 轉換十六進制值的字符串爲十六進制
- 27. 我可以用二進制而不是十六進制嵌入數字嗎?
- 28. 十六進制數字是負數嗎?
- 29. 將字符串轉換爲十六進制到十六進制
- 30. 十六進制值