半加器和全加器的区别(加法器是一种计算器用于将两个二进制数相加)
本文主要介绍半加器和全加器,通过逻辑电路和其真值表了解它们的原理,以了解单片机、CPU是怎么工作的。在进入这个主题之前,要先了解布尔逻辑和逻辑门,这对本文的阅读,或者阅读其他数字电路资料非常重要。
什么是加法器?加法器是一种计算器,用于将两个二进制数相加。这个计算器不是指带有按钮的计算器,这是一种可以与许多其他电路集成以实现广泛应用的电路。有两种加法器:
1. 半加器
2. 全加器
半加器在半加器和其它逻辑门的帮助下,我们可以设计能够执行简单加法的电路。
让我们先来看看一位二进制的加法。
0+0 = 0
0+1 = 1
1+0 = 1
1+1 = 10
一位二进制加法器是最小单元,上面的算式可以看到1+1=10,有2位输出。
因此,上述加法算式可以写成
0+0 = 00
0+1 = 01
1+0 = 01
1+1 = 10
这里'10'的输出'1'为进位。结果显示在下面的真值表中。
先看看实现半加器的逻辑图。
从真值表和逻辑图中可以清楚地看出,这个 1 位加法器用异或门和进位的与门实现,输出“Sum”。
对于复杂的加法,可能存在多位数相加的情况。这需要更合适的加法器来帮助——全加器。
全加器两个半加器电路可以实现一个全加器。第一个半加法器将用于将 A 和 B 相加以产生部分和。后一个半加法器用于将 CIN 与前一个半加法器产生的和相加,以获得最终的 S 输出。
任何半加器逻辑产生进位,就会有一个输出进位。因此,COUT 将是半加器进位输出。看看下面全加器逻辑电路的实现。
这种类型的加法器比半加法器的实现稍微复杂。半加器和全加器的主要区别在于全加器具有三个输入和两个输出。前两个输入是加数“A”和 “B”,第三个输入是前面一步的运算进位CIN,如1+1=10,结果“10”中的“1”就是CIN,用于下一次相加运算的输入。
从上面的真值表和全加器逻辑图,我们可以看到,输出S是输入 A 与 B 的半加器运算结果和进位CIN的异或运算。我们还必须注意,只有当“A”,“B”“CIN”输入中的任意两个输入为高电平时,COUT 才会为真。
把全加器复杂的逻辑图抽象出来,用以下图来表示:
使用这种抽象类型的符号,我们把多个全加器组合,从前一个单元全加器输出一个进位,并将这个进位发送到下一个全加器,可以组成多位加法器。
在计算机中,对于多位运算,每个位由一个全加器表示。因此,要把4位二进制数相加,可以通过两个由4个全加器组合形成的多位加法器来完成。
文章评论