在微型计算机中运算器包含在哪里,计算机运算器的结构要包含哪几个部分,你知道吗?...

在各种计算机中,运算器的结构虽然有区别,但必须包含如下几个基本部分,即加法器、通用寄存器、输入数据选择电路和输出数据控制电路等。

加法器

加法器的主要作用是实现两个数的相加运算,对逻辑运算也给予一定的支持,并且常作为传送数据的通路使用。

通用寄存器

通用寄存器组中有若干个寄存器是用来暂时存放参加运算的数据和运算结果(或中间结果)的。这是因为要将从主存储器中取出的参加运算的数据,立即送到加法器中进行处理还存在一些问题,例如在对两个数据进行操作的情况下是不可能从存储器中同时取出两个数据并直接送入加法器中处理的,而通常是利用寄存器来暂时存放将要参加运算处理的数据。在前几节介绍的运算方法中,参加运算的数可看做是由运算器的通用寄存器直接提供的。另外有些寄存器可作变址寄存器、状态寄存器、堆栈指示器使用。不同的机器对这组寄存器使用的情况和设置的个数也不相同。

输入数据选择电路

输入数据选择电路是对送入加法器的数据进行选择和控制的电路。其作用为:一是用来选择将哪一个或哪两个数据(数据来源于寄存器或总线等部件)送入加法器;二是用来控制数据以何种编码形式(原、反、补码)送入加法器。常称这部分电路为多路开关或多路转换器。这部分电路通常有实现某些逻辑运算的电路,它们也是由与、或、非门组成的。

输出数据控制电路

输出数据控制电路是一种对加法器输出数据进行控制的电路。这部分电路一般具有移位功能,并具有将加法器输出的数据送到运算器通用寄存器的通路和送往总线的控制电路。

运算器包括ALU、阵列乘除器、寄存器、多路开关、三态缓冲器、数据总线等逻辑部件。运算器的设计,主要是围绕ALU和寄存器同数据总线之间如何传送操作数和运算结果进行的。在决定方案时,需要考虑数据传送的方便性和操作速度,在微型机和单片机中还要考虑在硅片上制作总线的工艺。计算机的运算器大体有如下三种结构形式:

单总线结构的运算器

单总线结构的运算器如图2-22(a)所示。由于所有部件都接到同一总线上,所以数据可以在任何两个寄存器之间,或者在任一个寄存器和ALU之间传送。如果具有阵列乘法器或除法器,那么它们所处的位置应与ALU相当。对这种结构的运算器来说,在同一时间内,只能有一个操作数放在单总线上。为了把两个操作数输入到ALU,需要分两次来做,而且还需要A,B两个缓冲寄存器。这种结构的主要缺点是操作速度较慢。虽然在这种结构中输入数据和操作结果需要三次串行的选通操作,但它并不会对每种指令都增加很多执行时间。只有当两个操作数都来自寄存器时,单总线结构的运算器才会造成一定的时间损失。但是由于它只控制一条总线,故控制电路比较简单。

双总线结构的运算器

双总线结构的运算器如图2-22(b)所示。在这种结构中,两个操作数同时加到ALU进行运算,只需一次操作控制,而且马上就可以得到运算结果。图中,两条总线各自把其数据送至ALU的输入端。特殊寄存器分为两组,它们分别与一条总线交换数据。这样,通用寄存器中的数据就可进入到任一组特殊寄存器中去,从而使数据传送更为灵活。ALU的输出不能直接加到总线上去。这是因为,当形成操作结果的输出时,两条总线都被输入数据占据,因而必须在ALU输出端设置缓冲寄存器。为此,操作的控制要分两步完成:在ALU的两个输入端输入操作数,形成结果并送入缓冲寄存器;把结果送入目的寄存器。假如在总线1、2和ALU输入端之间再各加一个输入缓冲寄存器,并把两个输入数据先放至这两个缓冲寄存器,那么,ALU输出端就可以直接把操作结果送至总线1或总线2上去。

三总线结构的运算器

三总线结构的运算器如图2-22(c)所示。在三总线结构中,ALU的两个输入端分别由两条总线供给,而ALU的输出则与第三条总线相连。这样,算术逻辑操作就可以在一步的控制之内完成。由于ALU本身有时间延迟,所以打入输出结果的选通脉冲必须考虑这个延迟。另外,设置了一个总线旁路器。如果一个操作数据不需要修改,而直接从总线2传送到总线3,那么可以通过控制总线旁路器把数据传出;如果一个操作数传送时需要修改,那么就借助于ALU。显然,三总线结构运算器的特点是操作时间快。

图2-22 运算器基本结构图

从上面的讨论可以看出,除加法器外,其他部分的逻辑实现是比较简单的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值