奎克的藏经阁 · 原书印刷页

编码 隐匿在计算机软硬件背后的语言 · 第 142 页

PDF 物理页索引 158 · 编码隐匿在计算机软硬件背后的语言

书名
编码 隐匿在计算机软硬件背后的语言
作者
未记录
印刷页
142
PDF 物理页
158(从 0 开始)
章节
编码隐匿在计算机软硬件背后的语言
UUID
38270854-596f-4a26-8183-db8c968c6020
来源类型
original_book
页面 SHA-256
44ad3890f497ce91238b963ab060a8669d076cf2f1157028209ab76fbddff151

为了对三个二进制数进行加法运算,我们需要将两个半加器和一个或门做如下连接。

要理解它的工作原理,首先从最左边第一个半加器的输入A和输入B开始,其输出是一个加和及相应的进位。这个和必须与前一列的进位输入相加,然后再把它们输入到第二个半加器中。第二个半加器的输出和是最后的结果。两个半加器的进位输出又被输入到一个或门中。你可能会觉得,这里还需要一个半加法器,这当然是可行的。但是如果你了解了所有的可能性之后,你会发现,两个半加法器的进位输出是不会同时为1的。或门在这里已经足够,因为或门除了在输入都为1的时候以外,其他情况下结果和异或门结果相同。

为了避免重复地画上面的那个图,我们用以下形式来替代上图中的一堆符号,它称为全加器(Full Adder)。

以下表格总结了全加法器所有可能的输入组合以及对应的输出结果。

在本章前面曾经提到过,我们的加法器需要144个继电器。下面就来解释一下这个数目是如何得到的。每个与门、或门和与非门都需要两个继电器,因此一个异或门中就包含6个继电器。一个半加器是由一个异或门和一个与门组成的,因此一个半加器就需要8个继电器。每个全加器由两个半加器和一个或门组成,所以它要18个继电器。我们需要8个全加器来制作8位二进制加法器。因而总共需要144个继电器。

编码—隐匿在计算机软硬件背后的语言

142