数字电路
工作在数字信号下的电子电路称为数字电路。与模拟电路相比,数字电路的优点有:
- 稳定性好,抗干扰能力强;
- 容易设计,便于构成大规模集成电路,所以成本低廉,使用方便;
- 信息处理能力强;
- 精度高且容易保持;
- 便于存储;
- 静态功耗小。
数制
常用的有十进制(D)、二进制(B)、十六进制(H)、八进制(O)。
其中,10 为 基数,、、、为各位数的 权。
对于任意一个 R 进制数,可以表示为:
B -> H
4 位二进制数对应 1 位十六进制数,所以当二进制转换十六进制时,整数部分和小数部分都需要按 4 位一组划分,不足则补 0。
D -> B、D -> H
十进制转二进制和十六进制,需要分别对整数部分和小数部分进行转换,最后合并。
整数部分
整数部分采用“除基取余”法,即不断除以基数,取余数,直至商为 0。
以 (208)₁₀ 转换成十六进制为例,基数是 16,所以逐次除以 16 取余数,得到结果为 (D0)₁₆。1
2
3
4
516 │ 2 0 8 余0 ↑ 低位
│___________ │
16 │ 1 3 余13 │
│________ │
0 │ 高位小数部分
小数部分采用“乘基取整”法,即不断将小数部分乘以基数,取积的整数部分,再对积的小数部分乘以基数,如此循环直至小数部分为 0。
以 (0.625)₁₀ 转化为十六进制为例,正好乘一次小数部分就为 0 了,结果为 (0.A)₁₆。所以 (208.625)₁₀ = (D0.A)₁₆。
编码
二-十进制代码(Binary Coded Decimal,BCD 码)是用 4 位二进制数表示 1 位十进制数码。常见的有 8421BCD 码、2421BCD 码、5211BCD 码,这些都是 恒权码。另外还有余三码、格雷码,属于 无权码。
余三码是由 8421BCD 码加 3 得到的,它有一个特点,从表中可以看出 0/9、1/8、2/7、3/6、4/5 互为反码。2421BCD 码也存在同样的特点。
十进制数码 | 8421BCD | 2421BCD | 余 3 码 | 5211BCD |
---|---|---|---|---|
0 | 0000 | 0000 | 0011 | 0000 |
1 | 0001 | 0001 | 0100 | 0001 |
2 | 0010 | 0010 | 0101 | 0100 |
3 | 0011 | 0011 | 0110 | 0101 |
4 | 0100 | 0100 | 0111 | 0111 |
5 | 0101 | 1011 | 1000 | 1000 |
6 | 0110 | 1100 | 1001 | 1001 |
7 | 0111 | 1101 | 1010 | 1100 |
8 | 1000 | 1110 | 1011 | 1101 |
9 | 1001 | 1111 | 1100 | 1111 |
x | 1010 | 0101 | 0000 | 0010 |
x | 1011 | 0110 | 0001 | 0011 |
x | 1100 | 0111 | 0010 | 0110 |
x | 1101 | 1000 | 1101 | 1010 |
x | 1110 | 1001 | 1110 | 1011 |
x | 1111 | 1010 | 1111 | 1110 |
格雷码又叫循环码,它的优点是,相邻的代码之间只有一位发生变化。因此,格雷码有助于提高系统的抗干扰性能和可靠性,能够提高系统工作速度。
十进制数码 | 二进制代码 | 格雷码 |
---|---|---|
0 | 0000 | 0000 |
1 | 0001 | 0001 |
2 | 0010 | 0011 |
3 | 0011 | 0010 |
4 | 0100 | 0110 |
5 | 0101 | 0111 |
6 | 0110 | 0101 |
7 | 0111 | 0100 |
8 | 1000 | 1100 |
9 | 1001 | 1101 |
10 | 1010 | 1111 |
11 | 1011 | 1110 |
12 | 1100 | 1010 |
13 | 1101 | 1011 |
14 | 1110 | 1001 |
15 | 1111 | 1000 |
原码、反码、补码
二进制数以 0 表示正数“+”,1 表示负数“-”。原码即在二进制数绝对值左侧加上符号位。
对于正数,它的反码、补码与原码相同。
对于负数,保持符号位不变,数值部分按位求反,即为反码;在反码的基础上,保持符号位不变,数值部分再加 1,即为补码。
已知反码,对其求反码即为原码;已知补码,对其求补码即为原码。