为了对三个二进制数进行加法运算,我们需要将两个半加器和一个或门做如下连接。
要理解它的工作原理,首先从最左边第一个半加器的输入A和输入B开始,其输出是一个加和及相应的进位。这个和必须与前一列的进位输入相加,然后再把它们输入到第二个半加器中。第二个半加器的输出和是最后的结果。两个半加器的进位输出又被输入到一个或门中。你可能会觉得,这里还需要一个半加法器,这当然是可行的。但是如果你了解了所有的可能性之后,你会发现,两个半加法器的进位输出是不会同时为1的。或门在这里已经足够,因为或门除了在输入都为1的时候以外,其他情况下结果和异或门结果相同。
为了避免重复地画上面的那个图,我们用以下形式来替代上图中的一堆符号,它称为全加器(Full Adder)。
以下表格总结了全加法器所有可能的输入组合以及对应的输出结果。
在本章前面曾经提到过,我们的加法器需要144个继电器。下面就来解释一下这个数目是如何得到的。每个与门、或门和与非门都需要两个继电器,因此一个异或门中就包含6个继电器。一个半加器是由一个异或门和一个与门组成的,因此一个半加器就需要8个继电器。每个全加器由两个半加器和一个或门组成,所以它要18个继电器。我们需要8个全加器来制作8位二进制加法器。因而总共需要144个继电器。
编码—隐匿在计算机软硬件背后的语言
142