半加器和全加器的区别之处是什么_(半加器和全加器的区别是半加器不考虑进位)

我们知道,CPU中有一个算术逻辑运算单元ALU,是计算机进行运算的核心部件:

半加器和全加器的区别之处是什么_(半加器和全加器的区别是半加器不考虑进位)

那么,CPU中的ALU是如何实现运算功能的呢?

半加器和全加器的区别之处是什么_(半加器和全加器的区别是半加器不考虑进位)

上图是ALU电路输入输出示意图,A,B代表输入两个加数,F代表运算结果。

半加器和全加器的区别之处是什么_(半加器和全加器的区别是半加器不考虑进位)

这是一位半加器的逻辑运算表,注意到两个加数都是1的时候会产生进位。

半加器和全加器的区别之处是什么_(半加器和全加器的区别是半加器不考虑进位)

图1 半加器电路图

这是一位半加器电路图。我们注意到,半加器的输入只有两个加数,没有前面位的进位。

半加器和全加器的区别之处是什么_(半加器和全加器的区别是半加器不考虑进位)

这是一位全加器的逻辑运算表,运算的时候带进位。

半加器和全加器的区别之处是什么_(半加器和全加器的区别是半加器不考虑进位)

图2 全加器电路图

这是全加器电路图。注意到输入变量有三个:两个加数和一个前面的进位。

半加器和全加器的区别之处是什么_(半加器和全加器的区别是半加器不考虑进位)

图3

上图是把若干个全加器连起来,以实现多位二进制加法。比如:

半加器和全加器的区别之处是什么_(半加器和全加器的区别是半加器不考虑进位)

其中低一位的进位被 Ci 送给了高一位的全加器的输入端,这样就实现了多位二进制相加。

半加器和全加器的区别之处是什么_(半加器和全加器的区别是半加器不考虑进位)

半加器和全加器的区别之处是什么_(半加器和全加器的区别是半加器不考虑进位)

上面两个电路是在图3的基础上进行了一些改良,以加快运算的速度,但原理是一样的。

我们知道,在计算机里面,减法、乘法和除法最终都转化为加法运算,也就是说,整个CPU中的ALU运算器,就是以图3里面那个简单的加法器为基础的。而图3又是以图2最简单的实现一位加法运算的全加器电路为基本组成单元,那么,我们就可以认为,计算机再复杂,也不过是用一个电路实现了一位二进制的加法运算而已。

创业项目群,学习操作 18个小项目,添加 微信:sum5080  备注:小项目

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 3300536702@qq.com 举报,一经查实,本站将立刻删除。
如若转载,请注明出处:https://www.yxfxq.cn/1729.html