透過 MCP 連接 →

輸入計算

數學公式

廣告

結果

十進位(base 10)
12
對應的十進位數值
二進位(base 2) 1100
八進位(base 8) 14
十六進位(base 16) C

這個轉換器能做什麼

這項工具可在電腦領域最常見的四種數系之間,換算一個整數:二進位(base 2)、八進位(base 8)、十進位(base 10)與十六進位(base 16)。只要輸入任意數值,並告訴計算器該數字是以哪種進位制書寫,它就會一次回傳這四種數系的對應表示法。

使用方式

在數值欄位輸入你的數字,從下拉選單選擇來源進位制,再讀取結果即可。輸入十六進位時,可使用 0-9 與字母 A-F(不分大小寫),而開頭的 0x0b 前綴會被自動去除。若某個數字不符合所選進位制的規則,結果會自動歸零。

公式說明

要把一個數讀成十進位,會將每一位數乘以「底數的位次次方」(從最右邊的第 0 位開始計算),再把所有乘積相加:

$$\text{數值} = \sum_{i=0}^{k-1} d_i \cdot \text{base}^{\,i}$$

要反向轉換,則是把十進位數值不斷除以目標底數;每次的餘數就是一位數字,將這些餘數由最後算出的往最先算出的順序讀回去,就是轉換後的數字。

展示 b 進制中各數字位權的示意圖,指數由右至左遞增
每個數字乘以基數的位置次方,再加總。

實例演算

以二進位 1111 為例。換算成十進位是

$$1\times2^3 + 1\times2^2 + 1\times2^1 + 1\times2^0 = 8 + 4 + 2 + 1 = \mathbf{15}$$

再把 15 轉成十六進位:\(15 \div 16 = 0\) 餘 \(15\),而 15 對應的數字為 F。換成八進位:\(15 \div 8 = 1\) 餘 \(7\),因此結果是 17

同一數字以二進位、八進位、十進位和十六進位表示的四條彩色長條
同一個值在四種數制中並排顯示。

常見進制等價表

計算中使用的四種位置記數系統共享相同的值——只有基數(進制)不同。十進制(基數 10)是日常使用的系統;二進制(基數 2)是資料的物理儲存方式;八進制(基數 8)和十六進制(基數 16)是分組位元的緊湊簡記法。下表列出了所有四種系統中最常見的值。

十進制(基數 10) 二進制(基數 2) 八進制(基數 8) 十六進制(基數 16)
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
16 10000 20 10
32 100000 40 20
64 1000000 100 40
128 10000000 200 80
255 11111111 377 FF
256 100000000 400 100
1024 10000000000 2000 400

注意 255(一個 8 位位元組能保有的最大值)在二進制中是八個 1,在十六進制中是 FF,而 256 需要第九位。這些邊界值在顏色、記憶體大小和網路遮罩中經常出現。

主要術語詳解

基數/進制
系統使用的不同數字符號的數量,以及當你向左移動時每個位置被乘以的值。十進制的基數是 10(數字 0–9),二進制基數是 2(0–1),八進制基數是 8(0–7),十六進制基數是 16(0–9 然後 A–F)。位置 \(i\) 上的數字 \(d_i\) 對總值的貢獻是 \(d_i \cdot \text{base}^{\,i}\)。
位元
一個二進制數字——最小的資料單位,保有單個 0 或 1。\(n\) 個位元可以表示 \(2^n\) 個不同的值。
半位元組
4 個位元的組合。半位元組保有 \(2^4 = 16\) 個值,正好是一個十六進制數字(0–F)。這就是為什麼十六進制與二進制對應得這麼整齊——每個十六進制數字就是一個半位元組。
位元組
8 個位元的組合(兩個半位元組),表示 \(2^8 = 256\) 個值,從 0 到 255。一個位元組寫成兩個十六進制數字,例如 FF = 255。
最高有效數字(MSD)
最左邊的數字,具有最大的位置權重(基數的最高次冪)。在二進制中是最高有效位元(MSB)。
最低有效數字(LSD)
最右邊的數字,權重最小(\(\text{base}^0 = 1\))。在二進制中是最低有效位元(LSB),決定了一個值是奇數還是偶數。
0b 前綴
一個約定(用於 C、Python 等),標記一個字面值為二進制,例如 0b1010 表示十進制 10。0b 只是記號,不是值的一部分。
0x 前綴
十六進制字面值的標準標記,例如 0xFF 表示十進制 255。八進制通常用前導 00o 前綴表示。
十六進制數字 A–F
因為十六進制需要 16 個符號,但只有 0–9 作為普通數字,字母 A–F 表示值 10–15:A=10、B=11、C=12、D=13、E=14、F=15。它們可以用大寫或小寫形式書寫。

常見問題

能處理十六進位的字母嗎?可以——十六進位接受 A–F(大小寫皆可)。

可以換算負數或小數嗎?不行,這個轉換器只支援非負整數。

為什麼我的十進位答案會有千分位逗號?那是為了方便閱讀而加上的;至於二進位、八進位與十六進位的輸出,因為屬於位置編碼,所以不會顯示分隔符號。

最後更新: