💻 你正在閱讀的這段文字,本質上是一串 0 和 1

此刻你看到的每一個字、每一張圖、每一個網頁元素,在電腦底層都是以**二進位(Binary)**的形式儲存和傳輸的。

「M」這個字母在電腦裡是 01001101。「你好」這兩個字,是數十個 0 和 1 組成的序列。就連你在螢幕上看到的顏色,也只是三組 0 到 255 之間的數字,最終也是二進位。

這一切的根基,是一個極度簡單的想法:用兩種狀態表示所有資訊。但這個想法是怎麼從哲學推論變成工程現實的?


📚 二進位的哲學根源:萊布尼茲與《易經》

戈特弗里德·萊布尼茲(1646–1716)

現代二進位系統的奠基者是德國哲學家兼數學家萊布尼茲(Gottfried Wilhelm Leibniz)。1703 年,他發表論文《二進位算術的說明》,系統性地建立了以 0 和 1 為基礎的計數系統。

萊布尼茲的動機帶有濃厚的神學色彩:他認為 1 代表上帝,0 代表虛無,宇宙萬物從上帝的創造(1)與虛無(0)中誕生——二進位系統以數學形式體現了創世的邏輯。

萊布尼茲發現了《易經》

更驚人的是,萊布尼茲後來發現,中國古代的**《易經》**中的卦象,在結構上與他的二進位系統驚人地相似。

《易經》的基本單位是「爻(yáo)」,分為:

  • 陽爻(⚊):一條實線,對應 1
  • 陰爻(⚋):一條斷線,對應 0

六個爻組成一個「卦」,共有 2⁶ = 64 卦,與 6 位元二進位可以表示 64 個不同值完全吻合。

二進位十進位易經卦名(部分)
0000000坤(六陰)
0000011
11111163乾(六陽)

萊布尼茲在給傳教士白晉(Joachim Bouvet)的信中興奮地寫道:「伏羲(傳說中《易經》的作者)早在我之前就已發現了二進位算術!」


⚡ 從數學到電路:布爾代數的橋樑

萊布尼茲之後,二進位在數學界沉寂了一個多世紀,直到另一位天才出現。

喬治·布爾(George Boole,1815–1864)

英國數學家布爾在 1854 年出版《思維的法則》,建立了布爾代數(Boolean Algebra)——一套以 True(真)和 False(假)為基礎的邏輯運算系統。

布爾代數的核心運算只有三種:

運算符號說明
AND(且)兩者都為真,才為真
OR(或)至少一者為真,即為真
NOT(非)¬真變假,假變真

這套邏輯運算與 0/1 的二進位完美對應:1 = True,0 = False。但當時沒有人意識到這套數學系統的工程潛力。

克勞德·香農(Claude Shannon):最重要的碩士論文

1937 年,美國工程師**克勞德·香農(Claude Shannon)**在 MIT 完成了一篇碩士論文,題目是《繼電器和開關電路的符號分析》。論文的核心觀點只有一句話:布爾代數可以用電路的開(1)與關(0)來實現。

電路的「開」與「關」正好是兩種狀態,完全對應 1 和 0。這篇論文被許多資訊理論學者稱為「史上最重要的碩士論文」,它在數學邏輯與電子工程之間架起了橋樑,直接奠定了現代電腦的理論基礎。


🔢 二進位怎麼數數?

我們日常用的是十進位(0–9),滿十進一位。二進位只有兩個符號(0 和 1),滿二進一位。

十進位二進位說明
00
11
210滿二進一位
311
4100滿四進一位
81000
151111
1610000
255111111118 位元最大值

換算公式

將二進位 1011 換算成十進位:

1×2³ + 0×2² + 1×2¹ + 1×2⁰
= 8 + 0 + 2 + 1
= 11

🖥️ 為什麼電腦用二進位而不用十進位?

這個問題的答案,藏在**電晶體(Transistor)**的物理特性裡。

電晶體是現代電腦的基本元件,其工作原理是控制電流的通與斷:

  • 有電流(高電壓)→ 1
  • 無電流(低電壓)→ 0

這兩種狀態物理上容易區分、穩定可靠、不易受雜訊干擾。如果要用十進位,就需要 10 種穩定的電壓等級,製造難度和錯誤率都會大幅上升。

二進位的優雅,在於它把「不確定性」降到最低:每一個電晶體,只需要回答一個問題——通,還是不通?

現代晶片裡有多少個電晶體?

晶片年份電晶體數量
Intel 400419712,300 個
Intel Pentium19933,100,000 個
Apple M12020160 億個
Apple M42024280 億個

每一個電晶體,都在每秒數十億次地回答「0 或 1?」。


🌐 二進位在日常生活中的蹤跡

顏色:RGB 與十六進位

網頁設計中常見的 #FF5733 是十六進位(Hex)的顏色碼,而十六進位只是二進位的壓縮表達方式:

  • FF = 11111111(十進位 255)→ 紅色最大值
  • 57 = 01010111(十進位 87)→ 綠色
  • 33 = 00110011(十進位 51)→ 藍色

檔案大小:位元與位元組

  • 1 bit(位元):最小單位,只能是 0 或 1
  • 8 bits = 1 Byte(位元組):可以表示 0–255 的任意整數
  • 1024 Bytes = 1 KB(千位元組)
  • 1024 KB = 1 MB(百萬位元組)

為什麼是 1024 而不是 1000?因為 1024 = 2¹⁰,是二進位計算的自然單位,遠比十進位的 1000 更方便。

Base64:二進位轉文字

電子郵件和網頁中常用的 Base64 編碼,本質上是把二進位資料(圖片、檔案)轉換成 64 個可打印的 ASCII 字元,方便在文字協定中傳輸。


常見問題 FAQ

Q1: 二進位和十六進位有什麼關係?

十六進位(Hexadecimal,0–9 再加上 A–F 共 16 個符號)是二進位的便捷縮寫:每 4 個二進位位元,剛好對應 1 個十六進位符號。程式設計師用十六進位是因為它比二進位短得多,但又能精確對應底層的 0 和 1。

Q2: 量子電腦還用二進位嗎?

量子電腦使用量子位元(Qubit),可以同時處於 0 和 1 的疊加態(superposition),這讓它在某些特定問題上比傳統電腦快得多。但量子電腦並非「不用」二進位,而是在計算過程中利用量子力學,最終讀出的結果仍然是 0 或 1。

Q3: 為什麼 IP 位址是 0–255 之間的數字?

IPv4 位址(如 192.168.1.1)由 4 組數字組成,每組範圍是 0–255,因為每組對應8 個二進位位元(1 Byte),8 位元的最大值恰好是 255(即 11111111₂)。


總結

從萊布尼茲的神學靈感,到布爾的邏輯代數,再到香農的電路分析,二進位制花了將近三百年,才從哲學思辨演變成驅動文明的工程基礎。

0 和 1,是人類選擇用來理解、儲存、傳遞所有資訊的最小語言。簡單到極致,卻能表達一切。