运算器的基本组成及操作过程

本文详细介绍了运算器的核心组件ALU,以及ACC和MQ寄存器在加减乘除运算中的作用。重点展示了如何在控制器调度下完成数据流动,包括乘商寄存器在复杂运算中的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

运算器的基本组成

在这里插入图片描述
ACC:累加器;ALU算数逻辑单元;X操作寄存器;MQ乘商寄存器。

核心为ALU
ACC和X为两个寄存器,用于数据的输入,ACC也能保存结果
由于乘法操作结果较长,会把增加出来的部分放到MQ

各个组成部分执行运算时,要存放的数据:
加法与减法类似:
在这里插入图片描述
乘法:
在这里插入图片描述

除法:
在这里插入图片描述

加法操作

①初态:ACC中要保存 被加数
②假设加法指令中,加数的地址为M,那么取出M中的数据放到X寄存器中,即 [M]->X
③由ALU执行加法,最后放到ACC中
在这里插入图片描述

减法操作

减法操作与加法操作一样

乘法操作

①初态:被乘数放在ACC中
②假设乘法指令中,乘数的地址为M,那么[M]->MQ
③根据约定,被乘数要放到X中,所以[ACC]->X
④乘法通过累加和移位进行,所以要让ACC保存累加的内容。在这之前,要将ACC清零,即0->ACC
⑤[X]×[MQ]->ACC//MQ
“//”表示寄存器的连接关系
在这里插入图片描述
这些过程的先后顺序由控制器控制

除法操作

①ACC中保存被除数
②假设除法指令中,除数保存在地址M中,那么[M]->X
③ALU执行除法运算,商存在MQ中,余数放在ACC中

可以看到乘法和除法中用到了MQ,乘法用MQ保存乘数,除法用MQ保存商,所以叫做乘商寄存器

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值