指令的那几个阶段,你还不会不知道吧!!!

本文详细解读了计算机指令执行的五个关键阶段:取指令(IF)、指令译码(ID)、执行指令(EX)、访存取数(MEM)和结果写回(WB)。每个阶段涉及内存访问、指令解析和数据处理,揭示了CPU如何从指令到结果的完整流程。
摘要由CSDN通过智能技术生成

指令的5个阶段

1.取指令阶段 IF (使用PC寄存器组和存储器)

取指令(Instruction Fetch,IF)阶段是将一条指令从主存中取到指令寄存器的过程。

程序计数器PC中的数值,用来指示当前指令在主存中的位置。当一条指令被取出后,PC中的数值将根据指令字长度而自动递增:若为单字长指令,则(PC)+1 -> PC;若为双字长指令,则(PC)+2 -> PC,依此类推。

PC -> AR -> Memory
Memory -> IR

2.指令译码阶段 ID (指令寄存器组)

取出指令后,计算机当即进入指令译码(Instruction Decode,ID)阶段。

在指令译码阶段,指令译码器按照预约的指令格式,对取回的指令进行拆分和解释,识别区分出不一样的指令类别以及各类获取操做数的方法。

在组合逻辑控制的计算机中,指令译码器对不一样的指令操做码产生不一样的控制电位,以造成不一样的微操做序列;在微程序控制的计算机中,指令译码器用指令操做码来找到执行该指令的微程序的入口,并今后入口开始执行。

{ 1.Ad
Memory -> IR -> ID -> { 2.PC变化
{ 3.CU(Control Unit)

3.执行指令阶段 EX (ALU算术逻辑单元)

在取指令和指令译码阶段以后,接着进入执行指令(Execute,EX)阶段。

此阶段的任务是完成指令所规定的各类操做,具体实现指令的功能。为此,CPU的不一样部分被链接起来,以执行所需的操做。

例如,若是要求完成一个加法运算,算术逻辑单元ALU将被链接到一组输入和一组输出,输入端提供须要相加的数值,输出端将含有最后的运算结果。

Memory -> DR -> ALU

4.访存取数阶段 MEM

根据指令须要,有可能要访问主存,读取操做数,这样就进入了访存取数(Memory,MEM)阶段。

此阶段的任务是:根据指令地址码,获得操作数在主存中的地址,并从主存中读取该操做数用于运算。

Ad -> AR -> AD -> Memory

5.结果写回阶段 WB (寄存器组)

做为最后一个阶段,结果写回(Writeback,WB)阶段把执行指令阶段的运行结果数据“写回”到某种存储形式:结果数据常常被写到CPU的内部寄存器中,以便被后续的指令快速地存取;在有些状况下,结果数据也可被写入相对较慢、但较廉价且容量较大的主存。许多指令还会改变程序状态字寄存器中标志位的状态,这些标志位标识着不一样的操做结果,可被用来影响程序的动做。

DR -> Memory

图解

在这里插入图片描述

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

莫余

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值