首页 理论教育 ADD指令的指令周期简介

ADD指令的指令周期简介

时间:2023-10-31 理论教育 版权反馈
【摘要】:表5-1中的第二条指令ADD是一条访内指令,指令周期如图5-6所示。图5-6ADD指令的指令周期第一个CPU周期,即取指令阶段,其过程完全与INC指令相同。第三个CPU周期,CPU从内存2000H单元中取出操作数,并与AL中的内容相加,结果存在AL中。取指令阶段结束时,指令寄存器IR中已经存放好ADD指令并进行了指令译码,译码结果已送往操作控制器。同时,指令地址计数器的内容又加1,变为2012H,为取第三条指令做好准备。至此,ADD指令执行完毕。

ADD指令的指令周期简介

表5-1中的第二条指令ADD是一条访内指令,指令周期如图5-6所示。它需要三个CPU周期,其中第一个CPU周期为取指令阶段,第二、第三个CPU周期为执行指令阶段。

图5-6 ADD指令的指令周期

第一个CPU周期,即取指令阶段,其过程完全与INC指令相同。我们看到,取出第一条INC指令时,IP的内容已经加1变成2011H,该地址存放着指令ADD AL,[2000H]。这样,取第二条指令时,取指令的过程和数据通路完全与第一条指令相同。

第二个CPU周期,CPU只做一件事,将操作数地址2000H送往地址寄存器。

第三个CPU周期,CPU从内存2000H单元中取出操作数,并与AL中的内容相加,结果存在AL中。

CPU具体的操作步骤如图5-7所示。

图5-7 ADD指令的操作步骤

1.取指令阶段(www.xing528.com)

CPU的动作和INC指令的前6步相同。取指令阶段结束时,指令寄存器IR中已经存放好ADD指令并进行了指令译码,译码结果已送往操作控制器。同时,指令地址计数器的内容又加1,变为2012H,为取第三条指令做好准备。

2.送操作数地址

CPU的动作如下所述:

①操作控制器发出操作控制信号

②把IR中的地址码部分2000H装入地址缓冲寄存器AR。

3.取出操作数并相加

CPU的动作如下所述:

①从内存2000H单元中读出操作数10H,传送到数据缓冲寄存器DR。

②由DR送来的操作数10H送往ALU寄存器,和累加器中的内容相加,运算结果放回累加器,累加器中原来的值被冲掉。至此,ADD指令执行完毕。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈