十六進位轉十進位
在瀏覽器裡把十六進位轉成十進位,採用任意精度運算,所以 64 位元的十六進位值也能精確換算。
在你的瀏覽器中執行
請輸入一個數字。
一般轉換器壞掉的地方
大的數字通常就是用十六進位寫下來的,所以十六進位轉十進位正是精度損失會現形的地方。
一個 16 位數的十六進位值——也就是 64 位元——已經超過 JavaScript 數字能精確表示的範圍。
0xFFFFFFFFFFFFFFFF 是 18446744073709551615,而用 parseInt 做的轉換器會給你
18446744073709552000,最後四位是憑空捏造的。
這裡用的是任意精度整數,所以輸入多長,答案都是精確的。
可以貼什麼進來
0x 前綴可有可無,大小寫沒差,數字之間的底線或空白會被忽略——所以 0xDEAD_BEEF、
DEADBEEF 和 de ad be ef 都是同一個值。
不是十六進位數字的字元會被指名回報,而不是被跳過。
把十六進位值當成有號數來讀
十六進位出現的場合通常都跟寬度有關,所以轉換也會在數值放得下的前提下,顯示 8、16、32、 64 位元的二補數讀法。
0xFF 當成無號位元組是 255,當成有號的則是 −1。0x80000000 無號是 2147483648,當成
32 位元有號整數則是 −2147483648——那個著名的、沒有對應正數的值。
顏色是另一回事
像 #1a2b3c 這樣的十六進位顏色,是紅、綠、藍三個各自獨立的位元組值,不是一個數字。把它
當成單一數值換算會得到 1715004,算術上正確但毫無用處。那種需求請用顏色相關的工具。
沒有任何上傳
在這個頁面裡轉換。