matlab修改图片位深度_MATLAB之Simulink(四)两位二进制数加法器

本文介绍了如何使用MATLAB Simulink构建两位二进制数加法器。通过结合半加器和全加器,实现了低位和高位的加法,并通过仿真验证了其正确性。
摘要由CSDN通过智能技术生成

##MATLAB之Simulink(四)
##两位二进制数加法器

在上一节中,我们学习了全加器的原理并且进行了仿真,今天我们来做一个实例——两位二进制数的加法器。

相关文章:MATLAB之Simulink(三)全加器

由于全加器有三个输入,其中一个是由低位的进位输入进来的,但是最低位只有两个输入,所以两个最低位相加不能用加法器,那么应该如何相加呢?这里给大家介绍另一种加法器——半加器。

半加器定义:
两个1位二进制数相加,若只考虑了两个加数本身,而没有考虑由低位来的进位的运算称为半加,而实现半加运算的逻辑电路称为半加器。

也就是说,半加器仅适用于一位二进制数的相加,不需要考虑低位的进位。所以我们需要用到一个半加器和一个全加器,半加器用来计算两个低位的结果,全加器用来计算两个高位的结果,同时考虑低位的进位。


一般情况下,用A、B来表示两个一位二进制加数,用S表示A、B的和,C表示A、B的进位。

先来仿真一下半加器:
列出真值表

cc9a5003e0fdad1fdf927ac7842020df.png

得出表达式:

d80596d6eb5e080190de421c3530828b.png

0e5e803d1a99d0116a721df13996a3ec.png

根据表达式,很容易可以作出半加器的模型
(过程这里不再多说,不懂得朋友请看我的上一篇全加器的文章)

fb99cfca76ef70cb7b4e12b9eabf9647.png

我们假设输入的数分别为00、01、10、11,那么输入矩形波的设置应该是这样:

2d99b7a4f3ed1b9342114e468498c70c.png

我们用示波器连接两个输入和两个输入,观察仿真结果:

647ea47485a2dc85d8baf2229ae6cded.png

这里有四行波形,第一行为加数A,第二行为加数B,第三行为S,第四行为C。
不难看出,仿真结果与真值表相对应,半加器仿真成功!

接下来,我们直接将一个半加器和一个全加器合并在一起稍微修改,就可以得到一个两位二进制数的加法器:

ee32a694da4d5d5b33fc259796c4d4f6.png

这里需要注意的是,半加器用来计算两个低位,全加器用来计算两个高位,全加器中的进位输入由半加器的进位输出连接。


在这幅图中,A0,A1表示两个低位,B0,B1表示两个高位。


我们用三个示波器分别表示第一个加数、第二个加数和结果。接下来我们看仿真结果:


第一个加数:

aae9eb2a80e3efc567314062d0ff63c9.png

第二个加数:

f9dfb93a1fe19f1158300b3381719585.png

结果:

aa207e656ba4a2001849c2ee21507504.png

注意:每幅图都是低位在上,高位在下。

我们进行验证,不难发现仿真结果正确。

这就是两位二进制加法器的仿真过程,掌握这个方法后很容易设计出多位二进制加法器,没错,只要增加几个全加器就可以了。

##以上就是本节的全部内容,后续内容会逐渐上传,相关源码也会统一上传,也可以到公众号私聊我要。

##本节内容已上传博客,请查看。

https://blog.csdn.net/weixin_44936771/article/details/107921297

##不足之处请及时指出,相互学习
##不懂得小伙伴可以公众号私信我,看到后会回复的,欢迎交流学习!

相关文章:MATLAB之Simulink(三)全加器

长按图片关注

909c030066e1fe79c907ce61d02fe07b.png

点点"在看"。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值