計算機革命/硬體/二進位制
| 十進位制 | 二進位制 |
|---|---|
| 0 | 0 |
| 1 | 1 |
| 2 | 10 |
| 3 | 11 |
| 4 | 100 |
| 5 | 101 |
| 6 | 110 |
| 7 | 111 |
| 8 | 1000 |
| 9 | 1001 |
| 10 | 1010 |
計算機使用二進位制(或二進位制系統)來儲存資料。二進位制系統只有兩個可能的數字,0 和 1。為了理解二進位制,我們將從每個人都熟悉的十進位制(或十進位制系統)開始。十進位制系統有十個數字,從 0 到 9。大於 9 的數字透過改變數字在數字中的位置來表示。數字 10 在十位數上有一個 1,在個位數上有一個 0,被理解為 (1*10) + (0*1)。類似地,100 在百位數上有一個 1,與 (1*100) + (0*10) + (0*1) 相同。現在來看一個更復雜的數字:3,687。它與 (3*1000) + (6*100) + (8*10) + (7*1) 相同。3,687 也與 (3*10^3) + (6*10^2) + (8*10^1) + (7*10^0) 相同。符號 ^ 表示指數。這裡有一個規律——隨著數字的增加,該數字乘以基數的遞增冪(在本例中為 10)。第一個數字乘以 10^0,第二個乘以 10^1,依此類推。那麼二進位制呢?如何用兩個數字來表示一個數字呢?當然,數字 1 就是 1,但是數字 10 是 2,100 是 8,依此類推。由於計算機科學家經常混合使用數字系統,因此在二進位制數前面新增字首 0b。3687 在二進位制中是 0b111001100111,這與 (1*2^11) + (1*2^10) + (1*2^9) + (0*2^8) + (0*2^7) + (1*2^6) + (1*2^5) + (0*2^4) + (0*2^3) + (1*2^2) + (1*2^1) + (1*2^0) 相同。那麼什麼是位和位元組呢?位是 binary digit 的簡稱。一個位的記憶體可以儲存一個二進位制數字。位元組是 8 個位的集合。8 位的位元組可以方便地儲存一個字元。8 位有 256 種可能的組合。
一個千位元組(KB)等於 1024 位元組。千位元組是 1024 而不是 1,000 的原因是它更易於適應二進位制(它是 2^10)。一個兆位元組(MB)等於 1024 千位元組,也就是 1048576 位元組。1 MB 大約相當於 500 頁純文字。一個吉位元組(GB)大約等於 10 億位元組。一個太位元組(TB)等於 1 萬億位元組。1 TB 大約相當於 5 億頁文字。一個拍位元組(PB)等於 1 千萬億位元組。最常用的數量級是艾位元組(EB),大約等於 100 萬億位元組。
幾乎所有計算機都使用二進位制。該系統完美地適應了單個位的記憶體的兩種狀態:開表示 1,關表示 0。0 和 1 代表不同的資訊,可以以多種不同的方式表示。將 0 和 1 轉換為可理解的資訊被稱為數字資料表示。計算機只能讀取以二進位制形式給出的指令,這使得二進位制成為計算機的自然語言。

二進位制程式碼是計算機用於處理資料的語法。例如,計算機將 "HI" 理解為 0100100001001001。使用二進位制程式碼,您可以編寫文字資料,例如 ASCII、EBCDIC 和 Unicode。這些程式碼用於表示資料中可能出現的任何字元,例如數字、字母和特殊字元和符號,如美元符號、逗號、百分號以及許多數學字元。ASCII 和 EBCDIC 僅使用拉丁字母,並且僅限於英語,而 Unicode 能夠用二進位制程式碼表示每種語言。它每個字元包含 1 到 4 個位元組,並且能夠表示超過一百萬個字元。Unicode 被大多數與網路相關的瀏覽器和瀏覽器中的應用程式使用。許多軟體正在適應 Unicode,包括 Microsoft Windows、MAC OS、Microsoft Office,甚至現代程式語言,如 Java 和 Python。Unicode 針對未編碼的新的語言不斷更新和發展。使用 Unicode 最大的優勢是它可以在全世界使用,並保持一致的結果。(Evans, A., Martin K. & Poatsy, M.(2008). 理解今天的計算機和未來的計算機。系統單元:處理和記憶體,第 2 章,第 54 頁)

透過這種方式,軟體程式也必須用 0 和 1 來表示。機器語言也是二進位制程式碼的一種,它將指令轉換為在計算機執行任何程式指令之前執行的指令。
計算機使用編碼系統來表示資料(計算機語言)。如今,大多數計算機被認為是二進位制計算機(數字計算機),它們只識別兩種狀態:開和關,分別用數字 0 和 1 表示。輸入到計算機的資訊被轉換為計算機形式,然後以我們可以理解的形式處理並反饋給使用者。0 和 1 被認為是位,這是計算機可以識別的最小資料單位。與位類似,還有許多不同的資料單位,這些單位是將位組合起來形成的,例如:位元組、千位元組、兆位元組、吉位元組和太位元組(還有更多)。計算機使用二進位制計數系統來表示數字和數學問題,只使用 0 和 1,類似於人類使用的十進位制計數系統。一些用於基於文字的資料的編碼系統是 ASCII、EBCDIC 和 Unicode。ASCII 和 EBCDIC 主要用於使用固定位集進行編碼的個人計算機。Unicode 是另一種基於文字的編碼系統,它可以用於任何語言,不像 ASCII 和 EBCDIC,這就是 Unicode 快速取代 ASCII 和 EBCDIC 的原因。與數字和基於文字的資料類似,圖形、音訊和影片也以二進位制系統表示。![]()