两位二进制数的加法,并使用逻辑门,实现了加法器的构建。在专业术语中,它叫半加器。顾名思义,它肯定是有不完备的地方,因此只能得到"半"的称谓,那么一定还有"全"加器,这里先暂且不表。
如果我们把半加器接入电路,两个开关表示加数与被加数,加和输出与进位输出都接上灯泡,两个灯泡的点亮和熄灭就表示加数之和,验证一下四个基本的二进制加法。
两个开关都断开,就表示0+0,灯泡都不亮,这就是0+0=0,
当其中一个开关闭合,加和输出位的灯泡都会点亮,这就是1+0=1,0+1=1的情况。
当两个开关都闭合的时候,加和位上的灯泡熄灭,进位输出上的灯泡点亮,这就是1+1=2的情况,用二进制表示就是1+1=10。
结果当然是符合预期的。
但是,很快我们又会遇到另外一个问题,我们所遇到的加法远不止1+1这么简单,要是遇到一个复杂点的两数相加,比如下面这个该怎么办呢?
我们只能将半价器用于最右面一列的相加,1+1=0,进位1。从右边算起的,第2列,由于进位位的存在,实际上需要将三个二进制数相加,而随后的每一列的加法都是这样的,需要将进位位算进来。
对于三个二进制数进行加法运算,我们需要将两个半加器和一个或门做如下连接,就可以实现功能。原理上不复杂,大家自己琢磨估计也能捣鼓出来。
这就是专业术语上所称的全加器。对应的输入输出结果如下。
我们对全加器的图标再做一次简化得到下面的示意图:
全加器是一个基本单元,有进位输入,输入A,输入B,加和输出,进位输出,很方便进行复制粘贴,理论上串联的全加器越多,那么能处理的数据量就越大,到底是不是这样呢,我们需要实践来检验一下。