五、算术逻辑单元

本文介绍了计算机算术逻辑单元(ALU)的基础知识,包括算术单元和逻辑单元的功能。通过实例展示了如何使用逻辑门构建半加器和全加器,并逐步构建8位行波进位加法器。讨论了溢出问题和超前进位加法器在提高计算速度中的作用。此外,还提及了74181 ALU芯片及其局限性,以及ALU在执行逻辑操作和数值测试中的应用。
摘要由CSDN通过智能技术生成

上节课我们学习了如何用二进制表示和存储数字,但是真正的目标是计算与有意义地处理数字。计算机的算术逻辑单元(ALU)用于实现计算机的算术操作,ALU被称作计算机的数学大脑。ALU是计算机里负责运算的组件,基本上其他所有部件都用到了他。Intel 74181是第一个封装到芯片中的ALU。本节课将尝试制造一个简单的ALU电路,实现和74181一样的功能。然后我们在余下的几集中将使用它制造出一台计算机。

ALU有着2个单元:1个算术单元和1个逻辑单元。ALU负责计算机的所有运算,包括加减乘除以及自增等等。我们尝试使用逻辑门(与或非门、异或门)电路建立ALU。

最简单的加法电路,将两个bit相加得到1个bit的结果。输入和输出的对应关系恰好是一个异或门。因为1+1=10,所以我们还需要1个位作为进位的标识,这个进位值我们可以用一个与门实现,如下所示。这样的逻辑电路就是一个半加器,然后我们还可以将半加器继续抽象化。
在这里插入图片描述
在这里插入图片描述
如果我们需要进行超过1+1的、超过两个bit之间运算,我们就需要“全加器”。因为超过两个bit的数之间的运算必然会产生进位,因此全加器的逻辑表一定是3个输入和两个输出的(进位与总和)。全加器可以使用两个半加器组成,根据逻辑表设计的逻辑电路如下所示。然后我们在将全加器的电路抽象化。

实验一 算术逻辑单元 1. 实验目的 (1) 掌握运算器的工作原理。 (2) 验证运算器的功能 2. 实验要求 (1)基本要求 设计一个4位的算术逻辑单元,满足以下要求。 ①4位算术逻辑单元能够进行下列运算:加法、减法、加1、减1、与、或、非和传递。用3位操作码进行运算,控制方式如下表所示。 运算操作码     运   算 对标识位Z和C的影响 000 result ←A+B 影响标志位Z和C 001 result ←A+1 影响标志位Z和C 010 result ←A-B 影响标志位Z和C 011 result ←A-1 影响标志位Z和C 100 result←A and B 影响标志位Z 101 result←A or B 影响标志位Z 110 result← not B 影响标志位Z 111 result←B 不影响标志位Z和C ②设立两个标志触发器Z和C。当复位信号reset为低电平时,将这两个标志触发器清零。当运算结束后,在时钟clk的上升沿改变标志触发器Z和C的值。运算结果改变标志触发器C、Z的情况如下:加法、减法、加1、减1运算改变Z、C;与、或、非运算改变Z,C保持不变;传送操作保持Z、C不变。因此在运算结束时Z、C需要两个D触发器保持。 ③为了保存操作数A和B,设计两个4位寄存器A和B。当寄存器选择信号sel=0时,如果允许写信号write=1,则在时钟clk的上升沿将数据输入dinput送入A寄存器;当sel=1时,如果允许写信号write=1,则在时钟clk的上升沿将数据输入dinput送入B。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值