DevToolPal
繁

進位轉換器

在二進位、八進位、十進位、十六進位和三十六進位之間轉換任意大小的整數。

本機處理,不會上傳

選項

數字

結果

結果會顯示在這裡

功能介紹

進位轉換器會同時以所有常見的位值記數系統顯示同一個整數:二進位(base 2)、八進位(base 8)、十進位(base 10)、十六進位(base 16)和三十六進位(base 36)。用其中任一種進位輸入數字,其他進位都會隨打即更新,每一列都有自己的複製按鈕。

程式設計師經常需要轉換進位:讀十六進位的色碼或記憶體位址、用二進位檢查位元旗標和遮罩、用八進位設定 Unix 檔案權限(755),或用三十六進位縮短 ID。

使用方式

  1. 在輸入框中輸入或貼上數字,或按 範例。
  2. 輸入進位 保持自動時,會辨識 0x、0o 和 0b 前綴,沒有前綴的數字當作十進位。若要直接輸入像 ff 這樣不含前綴的十六進位數字,請自己選擇進位。
  3. 開啟 數字分組 可以把長結果切成易讀的組:二進位和十六進位每 4 位一組,十進位和八進位每 3 位一組。
  4. 用每一列的複製按鈕複製結果。位元數 這一列會告訴你這個值需要多少位元,挑選整數型別時很有用。

範例

0xFF5733 是 CSS 中的一種橘色,換算結果如下:

進位值
十進位16734003
二進位111111110101011100110011
八進位77653463
三十六進位9yo1f

它需要 24 位元,紅、綠、藍各佔一個位元組。

進位轉換的原理

在 b 進位中,每一位數的權重是它右邊那一位的 b 倍。十六進位的 ff 等於 15 × 16 + 15 = 255。轉換到另一種進位時,就是反覆除以新的基數,再把餘數倒過來讀。由於 16 = 2⁴、8 = 2³,每一個十六進位數字剛好對應四個二進位數字,每一個八進位數字對應三個,這也是為什麼十六進位是書寫二進位的精簡方式。

常見問題

› 最大可以轉換多大的數字?

實際上沒有上限。轉換器使用任意精度整數(BigInt),所以 64 位元、128 位元甚至更長的值都能精確轉換,不像一般計算機超過 2^53 就會失去精度。

› 怎麼輸入十六進位或二進位數字?

輸入進位設為自動時,十六進位加上 0x 前綴、二進位加 0b、八進位加 0o,例如 0xff 或 0b1010。也可以從選單選擇進位,再直接輸入不含前綴的數字。

› 負數會怎麼顯示?

以負號加上絕對值表示,例如 -255 在十六進位是 -ff。這個工具不會轉換成固定位元寬度的二補數形式。

› 可以貼上帶有分隔符號的數字嗎?

可以。空格、底線和逗號都會被忽略,所以 1_000_000 和 1,000,000 都能用。開啟數字分組後,結果會重新加上空格分組。