该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
下面一段是《三体》里关于人列计算机基础的描写,我想大家都还记得吧:
秦始皇挥手召来了三名士兵,他们都很年轻,与秦国的其他士兵一样,一举一动像听从命令的机器。
“我不知道你们的名字,”冯•诺伊曼拍拍前两个士兵的肩,“你们两个负责信号输入,就叫‘入1’、‘入2’吧.”他又指指最后一名士兵,“你,负责信号输出.就叫‘出’吧,”他伸手拨动三名士兵,“这样,站成一个三角形,出是顶端,入1和入2是底边。”
“哼,你让他们成楔形攻击队形不就行了?”秦始皇轻蔑地看着冯•诺伊曼。牛顿不知从什么地方掏出六面小旗.三白三黑,冯•诺伊曼接过来分给三名士兵,每人一白一黑,说:“白色代表0,黑色代表1。好,现在听我说,出,你转身看着入1和入2,如果他们都举黑旗,你就举黑旗,其他的情况你都举白旗,这种情况有三种:入l白,入2黑;入l黑,入2白;入1、入2都是白。”
.
.
.
然后,冯•诺伊曼又用三名士兵构建了与非门、或非门、异或门、同或门和三态门,最后只用两名士兵构建了最简单的非门,出总是举与入颜色相反的旗。
.
.
.
上面提到了计算机最基础的数字逻辑器件:门。其实最基础的门只有三种:与门、非门,其它的门都可以用这两种门的组合来实现。原文提到的由三名士兵组成的或门的输入输出关系可以用下面这个表来表示:
入1 入2 出
黑 黑 黑
黑 白 黑
白 黑 黑
白 白 白
为了方便,我们用1、0两个数字来表示黑、白
in1 in2 out
1 1 1
1 0 1
0 1 1
0 0 0
这就是数字逻辑电路中所谓的真值表,类似的与门的怎知表是这样的:
in1 in2 out
1 1 1
1 0 0
0 1 0
0 0 0
非门:
in out
1 0
0 1
下图是这三种门常用的表示方法: