半加器、全加器的实现和应用——《计算机科学概论》原书第七版 重点内容分析

门电路实现半加器和全加器的原理

门和电路

如果想详细了解请访问门和电路——组合电路基本原理

问题分析

任何减法都可以转化为加法,对于二进制的加减法的运算可以查看二进制及原码、反码、补码《计算机科学概论》原书第七版 重点内容分析,多个数的加法我们可以拆分为两个数的加法。
研究两个数的加法,我们可以使用逻辑门来实现半加器和全加器。

半加器

半加器可以实现二进制中一个位的加法运算。
我们只需要考虑一个位(或者最低位)
实现半加器的逻辑电路真值表如下(A、B代表两个被操作数,Sum表示加和,Carry表示进位):

A 0B0SumCarry
0000
0110
1010
1101

观察真值表,我们可以直接用异或门计算sum,然后使用与门计算Carry。
用布尔表达式可以写为:Sum=A·B Carry= A ⊕ B

全加器

半加器是有局限的,主要的原因是只能实现最低位的加法计算,如果涉及到进位,那么半加器是无法实现的,因此,我们引入了全加器。
全加器的真值表如下(C_in代表进位)

A1B1C_inSumCarry
00000
00110
01010
01101
10010
10101
11001
11111

C_in的值是上一位的全加器(也就是carry)直接传递过来的。
在全加器中我们为了求得Sum和carry,需要使用两个半加器和一个或门,计算过程如下:

  1. 将A1和B1进行输入半加器,获得S1和C1。
  2. 将S1和C_in输入半加器获得S2和C2,Sum即为S2。
  3. 将C2与C1输入或门得到Carry.
  • 16
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mottte

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值