二進制數字系統的介紹
我最近介紹了十進制數字系統,這是我們作為人類所熟悉的系統。
如我在前一篇文章中所說,作為人類,我們通常有10隻手指,可以計數到10,這就是為什麼這個系統在我們的歷史中如此流行。
二進制數字系統對於我們的物種而言是第二重要的系統,因為它引領了電子和計算機的革命。
在電子學中,我們有兩種狀態:0或1。有0伏特,或者有5(或9、12等)。閘門打開了,或者閉上了。
它只能是一種或另一種。
二進制數字系統中的位數被稱為位元。
就像十進制數字系統一樣,二進制數字系統也是一種位置相關的系統。
我們將二進制數字系統中的每個位數乘以2的幂,根據它們的位置,從右邊的位置0開始。
給定:
[2^0]等於1
[2^1]等於2
[2^2]等於4
[2^3]等於8,以此類推。
我們可以使用一系列位元來表示數字:
1
可以表示為[1\times2^0]
10
可以表示為[1\times2^1 + 0\times2^0]
111
可以表示為[1\times2^2 + 1\times2^1 + 1\times2^0]
在數字中,前導的零可以省略或添加,因為它們對於最左邊的1
的左側並沒有意義:110
可以表示為0110
或00000110
如果需要的話。它們具有完全相同的含義,因為如上所述的系統,我們只是將2的冪次方乘以0。
使用二進制數字,我們可以表示十進制數字系統中的任何類型的數字。
我們需要足夠的位元數來表示足夠的數字。如果我們想要有16個數字,這樣我們可以從0計數到15,我們需要4位(位元)。使用5個位元,我們可以計數32個數字。32個位元將給出我們4,294,967,296
個可能的數字。
64個位元將給出我們9,223,372,036,854,775,807
個可能的數字。它增長得非常快速。
這是前4個位元的簡單轉換表,我們可以只使用2個位元生成它:
十進制數字 | 二進制數字 |
---|---|
0 | 00 |
1 | 01 |
2 | 10 |
3 | 11 |
這是前8個位元的簡單轉換表:
十進制數字 | 二進制數字 |
---|---|
0 | 000 |
1 | 001 |
2 | 010 |
3 | 011 |
4 | 100 |
5 | 101 |
6 | 110 |
7 | 111 |
如果你注意到了,我在4到7的序列中重複了上述序列,只是在前面加上了1
而不是0
。
這是前16個位元的簡單轉換表:
十進制數字 | 二進制數字 |
---|---|
0 | 0000 |
1 | 0001 |
2 | 0010 |
3 | 0011 |
4 | 0100 |
5 | 0101 |
6 | 0110 |
7 | 0111 |
8 | 1000 |
9 | 1001 |
10 | 1010 |
11 | 1011 |
12 | 1100 |
13 | 1101 |
14 | 1110 |
15 | 1111 |
同樣地,我重複了我們用來獲得前8個數字的序列,在0-7之前添加了0,在8-15之前添加了1。
我將很快討論使用二進制數字進行加法和除法等操作,十六進制數字系統,以及如何將二進制轉換為十進制和十六進制,而不需要查看這樣的轉換表,以及反之亦然。