《CODE》 返回目录
计算机硬件与软件背后的隐藏语言

03 十进制的替代品——二进制

此部分对应第一版原文《第16章 存储器组织》

建议结合原文进行交互阅读

本章主要讨论替代数制(包括二进制)

最后通过两个电路展示如何使用逻辑门电路来解析或生成二进制数。

三-八译码器

第一个电路称为3-8译码器,用于显示三位二进制数的十进制值。

通过鼠标点击或手指触摸切换顶部的开关。

底部点亮的灯泡显示该二进制数对应的十进制值。

例如,二进制101对应十进制5。

您的浏览器不支持画布元素

八-三编码器

第二个电路称为编码器

使用鼠标或手指将顶部的长条长按拖动到0到7之间的特定十进制数。

底部输出显示该数的二进制值。

例如,十进制6对应二进制110。

您的浏览器不支持画布元素

有多少种双输入逻辑门?

此前我们介绍了四种标准双输入门:AND、OR、NAND和NOR。

但您可能想知道:还有其他类型吗?如果有,共有多少种?

答案是16种。共有16种独特的双输入门。

您可以通过构建一个表格来验证这一点

该表格显示了所有输入组合(用AB表示)及其对应的输出

Output开始每一行代表一种输出门:

我将一些比较经典的逻辑门进行了说明,比如AND、OR等:

A: 0 0 1 1
B: 0 1 0 1
Output:1 0 0 0 0
AND 与门 2 0 0 0 1
3 0 0 1 0
4 0 0 1 1
5 0 1 0 0
6 0 1 0 1
XOR 异或门7 0 1 1 0
OR 或门8 0 1 1 1
NOR 或非门9 1 0 0 0
XNOR 同或门10 1 0 0 1
11 1 0 1 0
12 1 0 1 1
13 1 1 0 0
14 1 1 0 1
NAND 与非门15 1 1 1 0
16 1 1 1 1

已经考虑了所有可能性

因为Output的16行是0到15的二进制数。

其中一些双输入门是简单的,例如第一行和最后一行,它们不依赖于任何输入。

有些只依赖于其中一个输入。

但它们都可以通过标准四门和反相器的基本逻辑运算组合来实现:

A: 0 0 1 1
B: 0 1 0 1 Logical operation
Output: 0 0 0 0 0 (ground)
0 0 0 1 AND
0 0 1 0 A AND NOT B
0 0 1 1 A
0 1 0 0 NOT A AND B
0 1 0 1 B
0 1 1 0 (A OR B) AND (A NAND B)
0 1 1 1 OR
1 0 0 0 NOR
1 0 0 1 (A NOR B) OR (A AND B)
1 0 1 0 NOT B
1 0 1 1 A OR NOT B
1 1 0 0 NOT A
1 1 0 1 NOT A OR B
1 1 1 0 NAND
1 1 1 1 1 (V)

如果仔细观察此表,您会发现Output部分的上半部分是下半部分的镜像:

ground(第一行)与V(最后一行)相反;AND(第二行)与NAND(倒数第二行)相反;依此类推。

注意观察 (A NOR B) OR (A AND B)这一行

也就是XOR异或0110

这种情况下,当AB中有一个为1但不同时为1时输出为1;

XOR门对于构成一种十分常用的电子器件非常重要,请拭目以待。

自权的SPACE公众号二维码

关注 自权的SPACE 掌握最新更新

公众号后台回复 编码 加入读者群📚


CODE 返回目录
计算机硬件与软件背后的隐藏语言