我们将电子学分为两个大部分:模拟与数字。
自然界中的一切都是模拟的。
温度、光线、距离、速度、湿度、声音,一切都可以用近乎无限的数值和精度来衡量。
模拟是自然的。然而,数字是人为的。人类在探求自然并创造人造系统和模拟的过程中,提出了数字测量和数值的概念。
数字表示只能有两种状态:开或关。1或0。
利用只使用0
和1
两个值来表示基本数值,我们可以以简单的方式解决复杂问题,并最终创造了计算机、智能手机和互联网等东西。
我们可以组合多个二进制值来表示具有超过2个状态的数字。用2个数字可以定义4个状态,用3个数字可以定义8个状态,用4个数字可以定义16个状态,以此类推。
然后,我们使用特定的协议和约定来表示数值。
例如,我们可以使用一系列位来表示十进制数:
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的幂乘以零。
根据我们需要表示的值,我们需要足够的数字位来表示足够的数字。
如果我们想要有16个值,以便我们可以从0数到15,我们需要4个数字位(比特位)。使用5个比特位,我们可以计数32个数字。32个比特位将给我们4,294,967,296
个可能的数字。
64个比特位将给我们9,223,372,036,854,775,807
个可能的数字。
以下是使用仅2个比特位生成的前4个数字的简单转换表格:
十进制数 | 二进制数 |
---|---|
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 |