0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
設定
將任何整數數字從 2 (二進制)、8 (八進制)、10 (十進制)、16 (十六進制) 及自訂基數 36 之間轉換。輸入數字,選擇原始基數,結果即時更新。

運作方式

數字的進位制表示它用多少個符號來表示自己。十進位(基數 10)使用 0 到 9;二進位(基數 2)只用 0 和 1;八進位(基數 8)用 0 到 7;十六進位(基數 16)用 0 到 9 加字母 A 到 F。

數字的值不變,只是寫法不同。此工具接受你所選進位制的數字,並即時以二進位、八進位、十進位和十六進位顯示,以及 2 到 36 的任意自訂進位制。

十六進位在程式設計中很流行,因為每一位恰好對應 4 位,所以兩位表示一個位元組。因此它用於 CSS 顏色、記憶體位址和資料傾印。

範例

255FF (hex) · 11111111 (bin) · 377 (oct)十進位的 255 是一個位元組的最大值:二進位中是八個 1,十六進位中是 FF。
2A42 (dec) · 101010 (bin) · 52 (oct)十六進位輸入:2A 等於十進位的 42。
DEAD57005 (dec)十六進位允許像 DEAD 或 BEEF 這樣的「單詞」,常被用作記憶體中的測試值。

使用情境

  • 將顏色、位元遮罩或暫存器的十六進位值轉換為十進位以便理解。
  • 將十進位數字轉換為二進位,以處理旗標、權限或位元級操作。
  • 手動驗證你的程式碼在以不同進位制讀寫資料時所做的轉換。

常見問題

0x、0b 和 0o 前綴是什麼意思?

它們是在程式碼中表示進位制的約定:0x 位於十六進位(0xFF)之前,0b 位於二進位(0b1010)之前,0o 位於八進位(0o777)之前。它們只是標明如何讀取後面的數字。

十六進位為什麼使用字母?

因為它需要 16 個符號,而數字 0-9 只有十個。字母 A 到 F 表示值 10 到 15。

我可以使用到多少進位制?

最高到 36 進位,它用盡了十個數字和 26 個字母(0-9 和 A-Z)。這是用英數字元所能表示的極限。

它轉換帶小數的數字嗎?

它是為整數設計的。在不同進位制間轉換小數在很多情況下會產生無限展開,這裡不予處理。