GCSE 計算機/計算機硬體/二進位制邏輯導論/二進位制邏輯
考試委員會說,你必須能夠解釋“為什麼資料以二進位制形式表示在計算機系統中?”
我們都習慣了十進位制計數,並且只有十個不同的數字(0,1,2,3,4,5,6,7,8,9)。當我們想要超過9時,我們很容易將兩個數字組合在一起 - 例如1和0組成10。我們理解“1”實際上代表“十個一”。我們可以對幾乎所有數字進行這樣的操作,知道8,456代表“八個千、四個百、五個十和六個一”。
使用十進位制稱為“十進位制”,這是因為我們有十根手指,因此用這種方式計數很容易 - 這只是一個方便的方式。由於計算機沒有手指,因此十進位制對它們來說並不方便。對於它們來說,最好的系統是所謂的“二進位制”。手指的等效物是檢測流過電線的電流量。為簡單起見,我們認為電流是“開”或“關”。如果電流關閉,我們稱之為零,如果電流開啟,我們稱之為1。 注意
一根電線只能告訴我們某件事是開還是關,這不是很有用。假設我們有三根電線,我們(或者更確切地說計算機)檢查每根電線,看它是開還是關。我們得到以下可能性
| 狀態 | 電線 1 | 電線 2 | 電線 3 |
|---|---|---|---|
| 電流? | 關 | 關 | 關 |
| 電流? | 關 | 關 | 開 |
| 電流? | 關 | 開 | 關 |
| 電流? | 開 | 關 | 關 |
| 電流? | 開 | 關 | 開 |
| 電流? | 開 | 開 | 關 |
| 電流? | 開 | 關 | 開 |
| 電流? | 開 | 開 | 關 |
如果我們將“關”視為零,並將“開”視為一,我們會得到
| 狀態 | 電線 1 | 電線 2 | 電線 3 |
|---|---|---|---|
| 電流? | 0 | 0 | 0 |
| 電流? | 0 | 0 | 1 |
| 電流? | 0 | 1 | 0 |
| 電流? | 1 | 0 | 0 |
| 電流? | 1 | 0 | 1 |
| 電流? | 1 | 1 | 0 |
| 電流? | 1 | 0 | 1 |
| 電流? | 1 | 1 | 1 |
現在讓我們回到普通的十進位制。我們有這樣的列標題
| 百位 | 十位 | 個位 | 意義 |
|---|---|---|---|
| 8 | 3 | 2 | 八百、三個十和兩個一 - 832 |
| 4 | 0 | 5 | 四個百、零個十和五個一 - 405 |
我們可以用二進位制做同樣的事情,但列標題會改變
| 十六位 | 八位 | 四位 | 兩位 | 個位 | 意義 |
|---|---|---|---|---|---|
| 1 | 0 | 1 | 1 | 0 | 16 + 4 + 2 = 22 |
| 0 | 0 | 0 | 1 | 1 | 2 + 1 = 3 |
| 1 | 0 | 0 | 0 | 1 | 16 + 1 = 17 |
列標題不同,但理念相同:列標題告訴你該列中一個條目值多少。在正常的十進位制中,任何在第二列(從右邊開始)的條目值都為10,在二進位制中為2。下一列在十進位制中值為100,但在二進位制中僅為4。
現在我們可以再次檢視圖一或圖二,並說這些電線是開還是關的方式可以告訴我們一個數字。因此,如果左邊的電線關閉,而接下來的兩根電線開啟,“值”為3。下面的圖 6 可能有助於你理解這一點。
| 狀態 | 電線 1 | 電線 2 | 電線 3 | |
|---|---|---|---|---|
| 電流? | O | O | O | 沒有四、沒有二、沒有一 = 0 |
| 電流? | O | 0 | 1 | 沒有四、沒有二、有一個一 = 1 |
| 電流? | 0 | 1 | 0 | 沒有四、有一個二、沒有一 = 2 |
| 電流? | 0 | 1 | 1 | 沒有四、有一個二、有一個一 = 3 |
| 電流? | 1 | 0 | 0 | 有一個四、沒有二、沒有一 = 4 |
| 電流? | 1 | 0 | 1 | 有一個四、沒有二、有一個一 = 5 |
| 電流? | 1 | 1 | 0 | 有一個四、有一個二、沒有一 = 6 |
| 電流? | 1 | 1 | 1 | 有一個四、有一個二、有一個一 = 7 |
在 http://forums.cisco.com/CertCom/game/binary_game_page.htm 練習這個概念
十進位制(普通數學)的演化是因為我們有十根手指,很容易想到十個數字(0 到 9)。
二進位制對計算機有用,因為它們只能真正記錄兩種可能性:開或關。因此,它們使用 0 和 1 來表示這些。因此,二進位制沒有數字 2 到 9。它們永遠不會被使用。。這與十進位制中沒有特殊數字來表示十一完全相同:你只需使用兩個 1。在二進位制中表示三,使用兩個 1,表示一個二和一個一 = 3
(如果不是,請參見下文!)
每列都以 2 的冪遞增,如下所示:十進位制
| 10^5 | 10^4 | 10^3 | 10^2 | 10^1 | 10^0 |
|---|---|---|---|---|---|
| 100,000 | 10,000 | 1000 | 100 | 10 | 1 |
二進位制
| 2^5 | 2^4 | 2^3 | 2^2 | 2^1 | 2^0 |
|---|---|---|---|---|---|
| 32 | 16 | 8 | 4 | 2 | 1 |
在普通的十進位制中,每列都是其右邊列的十倍。
在二進位制中,每列都是其右邊列的兩倍。