什麼是進位轉換計算機?
這個工具可以把以某一種進位制表示的非負整數,一次換算成五種常見的進位制:十進位(base 10)、十六進位(base 16)、八進位(base 8)、六進位(base 6)與二進位(base 2)。它是純數學換算工具,不涉及任何國家或地區的特殊規則,因此在世界各地的運算結果都完全相同。程式設計師、學生與電子愛好者經常用它快速切換同一個數值的不同表示法。
使用方式
在「數值 (x)」欄位輸入你的數字,注意所用的數字必須符合所選進位制的規則。透過選項按鈕(radio button)選擇輸入的進位制。十六進位可使用 A–F 字母(大小寫皆可);六進位只接受 0–5,八進位接受 0–7,二進位則只接受 0–1。輸入後即可直接讀取五種等值的表示法。支援範圍為 \(0\) 到 \(2^{64} - 1\),且僅支援整數(不接受小數或負數)。
公式解析
解析時會從最高位到最低位逐一讀取每個數字:\(N = N \times \text{基數} + \text{digitValue(數字)}\),其中 0–9 對應 0–9,A–F 對應 10–15。要轉換成目標進位 \(b\) 時,採用連續除法:取 \(r = N \bmod b\) 作為該位數字,記下後設 \(N = N \div b\),重複此步驟直到 \(N = 0\),最後將收集到的數字反轉排列即可。在十六進位中,餘數 10–15 會以 A–F 表示。
$$N_{10} = \sum_{i=0}^{k-1} d_i \cdot \text{Base}^{\,i} \qquad\text{where } d_i \text{ are the digits of } \text{Value (x)}$$
實際範例
以十進位輸入 129。十六進位:\(129 = 8 \times 16 + 1\) →「81」。八進位:\(129 = 2 \times 64 + 0 \times 8 + 1\) →「201」。六進位:\(3 \times 36 + 3 \times 6 + 3 = 129\) →「333」。二進位:\(128 + 1\) →「10000001」。
進制轉換參考表
下表列出了五個進制系統中的常見非負整數:十進制(進制 10)、十六進制(進制 16)、八進制(進制 8)、六進制(進制 6)和二進制(進制 2)。使用它來檢查轉換器或記憶最常用的邊界值,如 15、16、255 和二的冪。
| 十進制 (10) | 十六進制 (16) | 八進制 (8) | 六進制 (6) | 二進制 (2) |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 1 | 1 | 1 | 1 | 1 |
| 2 | 2 | 2 | 2 | 10 |
| 5 | 5 | 5 | 5 | 101 |
| 6 | 6 | 6 | 10 | 110 |
| 7 | 7 | 7 | 11 | 111 |
| 8 | 8 | 10 | 12 | 1000 |
| 10 | A | 12 | 14 | 1010 |
| 15 | F | 17 | 23 | 1111 |
| 16 | 10 | 20 | 24 | 10000 |
| 32 | 20 | 40 | 52 | 100000 |
| 64 | 40 | 100 | 144 | 1000000 |
| 100 | 64 | 144 | 244 | 1100100 |
| 255 | FF | 377 | 1103 | 11111111 |
注意 255(8 位位元組能保存的最大值)在十六進制中是 FF,在二進制中是八個 1,這就是為什麼單個十六進制對可以乾淨地映射到一個位元組。
定義與詞彙表
- 進制 / 基數
- 位置數字系統使用的不同數字符號的數量,以及從一列到下一列的位值增加的因子。進制 \(b\) 使用數字 \(0\) 到 \(b-1\)。
- 十進制(進制 10)
- 使用十個數字 0–9 的日常數字系統。每一列是 10 的冪:個位、十位、百位等。
- 十六進制(進制 16)
- 使用十六個符號 0–9 和 A–F 的進制 16 系統。在計算中廣泛使用,因為每個十六進制數字恰好表示四個二進制位(一個半字節)。
- 八進制(進制 8)
- 使用數字 0–7 的進制 8 系統。每個八進制數字對應恰好三個二進制位;在早期計算和 Unix 文件權限中很常見。
- 六進制(進制 6)
- 使用數字 0–5 的進制 6 系統。在實踐中不太常見,但作為教學工具和在某些數學背景下很有用。
- 二進制(進制 2)
- 只使用數字 0 和 1(位)的進制 2 系統。它是數字電子設備的原生語言,其中每一位是開/關狀態。
- 數字值(A–F = 10–15)
- 在進制大於 10 的系統中,字母將數字集擴展到 9 以上。在十六進制中:A = 10、B = 11、C = 12、D = 13、E = 14 和 F = 15。
- 位置記號法
- 一個系統,其中數字的貢獻取決於其位置。數字的值為 \(N_{10} = \sum_{i=0}^{k-1} d_i \cdot b^{\,i}\),其中 \(d_i\) 是位置 \(i\) 中的數字(從右邊的 0 開始計數),\(b\) 是進制。
- 最高有效位 (MSD)
- 數字最左邊的數字,具有最高的位值,對整體大小的貢獻最大。
- 最低有效位 (LSD)
- 最右邊的數字,佔據個位(\(b^0\)),對該值的貢獻最小。
- 無符號 64 位範圍
-
無符號 64 位整數可以表示從 0 到 \(2^{64}-1 = 18{,}446{,}744{,}073{,}709{,}551{,}615\) 的值,在十六進制中為
FFFFFFFFFFFFFFFF—— 十六個 F 數字。
常見問題
可以計算像 12.5 這樣的小數嗎?不行,本工具僅支援整數。可以輸入負數嗎?不行,範圍從 0 開始。十六進位輸入區分大小寫嗎?不會——「ff」與「FF」都會被解析為 255,而輸出的十六進位一律使用大寫。