c语言实现n位带标志加法器,笔记 | 计算机系统基础:02-逻辑运算电路

本文介绍了计算机系统基础中的逻辑运算电路,特别是通过C语言实现n位带标志加法器的过程。讨论了如何判断溢出与数据舍入,涉及加法器的构造、进位标志以及符号标志。还探讨了C语言中的算术运算,包括逻辑移位和算术移位的区别,并讲解了整数加减运算中的溢出判断,以及浮点数的运算原理和可能遇到的溢出情况。文章推荐了《编码:隐匿在计算机软硬件背后的语言》一书,以帮助读者深入理解计算机系统的运作。
摘要由CSDN通过智能技术生成

零. 课程要点:

了解基础逻辑电路

C语言中的各类运算

判断溢出与数据舍入

如果没学过基础逻辑电路,应该是有专门的一门课《数字逻辑电路》,那门课里有更详细的介绍。因为比较注重逻辑推理,据大学的数电老师说,自从教了这门课,反正他打桥牌就没怎么输过。在计算机系统基础这门课里只是引用一些逻辑部件,更重要的是理解C语言中各类运算是怎么通过电路实现的,由此可能存在怎样的溢出问题,这才是我们学习的重点。

另外,推荐大家一本书《编码:隐匿在计算机软硬件背后的语言》,可以看成是“如何一步步搭建一台计算机”,但是却一点都不晦涩难懂,非常生动有趣哦。

一. 数字逻辑电路

与门,或门,非门,异或门

3cf837dde27e

门电路

多路选择器

3cf837dde27e

多路选择器

一位加法器(全加器)

低位进位为Cin,和为F,高位进位为Cout

3cf837dde27e

一位加法器

n位加法器

由n个全加器构成,例:A=1001,B=1100,则F=0101,Cout=1

n位加法器能实现无符号的整数加,但无法用于带符号整数加,无法判断是否溢出

3cf837dde27e

n位加法器

n位带标准加法器

溢出标志OF=Cn

math?formula=%5CoplusCn-1

进位/借位标志CF=Cout

math?formula=%5CoplusCin

符号标志SF=Fn-1

零标志ZF=1当且仅当F=0

3cf837dde27e

n位带标志加法器

n位整数加/减运算器

[A-B]补 = [A]补 + [-B]补 = [A]补 +

math?formula=%5Coverline%7B%5BB%5D_%E8%A1%A5%7D + 1

3cf837dde27e

n位整数加减运算器

算术逻辑部件(ALU)

实现基本算术运算与逻辑运算,核心电路是带标志加法器,操作控制端ALUop决定操作的类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值
>