二進位

以二進位形式轉換並執行操作

如何使用二進位

  1. 1用對應模式輸入二進位制、十進位制或十六進位制數。
  2. 2選擇要轉換的目標進位制。
  3. 3檢視轉換後的值以及(相關時)位長度。

進位制間轉換

十進位制 = Σ(第i位數字 × 進位制^i);二進位制用 0–1,基為 2

二進位制僅用 0 和 1 表示數,每一位是 2 的冪,這正是計算機儲存資料的方式。

轉十進位制時把每位乘以其位值後求和;從十進位制轉換則不斷除以目標進位制並收集餘數。

十進位制轉二進位制用「**除 2 取餘,倒序排列**」:把 13 連續除以 2,餘數依次是 1、0、1、1,倒過來就是 1101。反過來二進位制轉十進位制用「按權展開」:1101 = 1×8 + 1×4 + 0×2 + 1×1 = 13。**每 4 位二進位制對應 1 位十六進位制**,這是快速轉換的捷徑——1111 1111 直接拆成 F F,即 FF(255)。

二進位制的第 n 位(從 0 開始)代表 2ⁿ,所以 8 位二進位制最大值是 2⁸ − 1 = 255,16 位是 65,535,32 位是 4,294,967,295。這也是為什麼 IPv4 地址每段最大值是 255(每段 8 位),以及為什麼老遊戲裡金幣上限常是 2,147,483,647(32 位有符號整數的最大值,即 2³¹ − 1)。

十進位制二進位制八進位制十六進位制
0000
1111
510155
10101012A
15111117F
16100002010
12711111111777F
25511111111377FF

十進位制 ↔ 二進位制 ↔ 八進位制 ↔ 十六進位制對照表

常見問題

為何計算機用二進位制?

電子裝置可靠地表示兩種狀態(開/關),使基 2 成為邏輯閘的自然選擇。

什麼是位與位元組?

位是單個二進位制數字;位元組是 8 位,常用儲存單位。

如何把十進位制轉二進位制?

不斷除以 2,餘數自底向上讀即得二進位制數字。

負數在二進位制裡怎麼表示?

用「補碼」:正數按位取反再加 1。以 8 位為例,5 是 00000101,取反得 11111010,加 1 得 11111011,這就是 −5。補碼的好處是加減法可以統一用加法器實現,0 也只有一種表示。8 位補碼的範圍是 −128 到 +127,這也是 int8 的取值範圍。

為什麼要學二進位制?

計算機底層只有高低電平兩種狀態,天然對應 0 和 1。理解二進位制能幫你搞清楚:為什麼 1 KB 是 1024 而不是 1000(2¹⁰)、為什麼子網掩碼是 255.255.255.0、為什麼顏色 #FF0000 是純紅(每兩位十六進位制對應 R/G/B 通道,FF = 255)。這些概念都建立在二進位制之上。

更多工具