计算机是近年来的热门考研专业,相信2021计算机考研学生也不少。文都考研小编为大家带来了2021计算机考研复习知识点:指令执行过程,一起看看吧。

指令执行过程

1.指令执行的时序

计算机工作的过程是取指令、分析指令、执行指令三个基本动作的重复。考虑到所有的器件中(寄存器、存储器)存储器的速度最慢,因此,取最慢的器件工作时间(周期)作为整个工作的最 长同步标准。

计算机的工作时序是按照存储器的工作周期划分的。每个存储器工作周期又称为机器周期。因此,每个机器周期至少完成一个基本操作。一般最 长的操作是访问存储器(读/写),这个时间也用于访问外设接口(寄存器)。如果,某个操作,比如利用运算器执行一次运算,如果不访问存储器,即使占用的时间很短,但是,也必须为其划分一个机器周期。因此,机器周期是计算时序划分的单位。

现在我们为计算机的执行时间进行最基本的划分:由于计算机不断地重复执行每个指令,所以,我们将执行的时间划分为一条一条指令执行所占用的时间,如下:

执行指令执行指令执行指令执行指令执行指令

我们将每指令占用的时间称为指令周期。由于每条指令的功能不一样,因此执行的时间也不同,指令周期长短不一样。

而每条指令的执行,又可以是取指令,分析指令,执行指令。由于取指令必须访问存储器,所以占用一个机器周期。分析指令是由指令译码电路完成的,所占用的时间极短,无需分配一个完整的机器周期。一般是在取指周期后期(结束之前的很短时间内)就可以完成。指令的执行较为复杂:可能不访问存储器;访问一次存储器;访问两次存储器等。因此,可能是一个机器周期到几个机器周期。

因此,每条指令的执行过程如下:

取指周期执行周期执行周期执行周期执行周期

个机器周期总是取指周期,而指令的地址总是从PC中获得,当发出读取存储器命令后,指令总是从数据总线DB送回,CPU接受到指令之后,将指令放在指令寄存器IR之中。指令在IR中一直保留到取下一条指令为止。

第二个机器周期开始,根据指令有所不同:

执行一次ALU运算:分配一个机器周期。

执行访问一次存储器:分配一个机器周期。

所以,根据指令执行的不同情况,将会得到不同指令执行所占用的机器周期。

根据每个机器周期完成的任务不同,我们将每个机器周期按照任务命名。如同用取指周期命名个机器周期一样。

2.指令执行过程举例

假设指令格式如下:

操作码rs,rdrs1imm(Disp)

rs,rd,rsl为通用寄存器地址;imm(或disp)为立即数(或位移量)。

加法指令功能:将寄存器(rs)中的一个数与存储器中的一个数(其地址为(rsl)+disp)相加,结果放在寄存器rd中,rs与rd为同一寄存器。

加法指令完成以下操作:

①取指周期

从存储器取指令,送入指令寄存器,并进行操作码译码(分析指令)。

程序计数器加1,为下一条指令作好准备。

控制器发出的控制信号:PC→AB,W/R=0,M/IO=1;DB→IR;PC+1。

②计算地址周期

计算数据地址,将计算得到的有效地址送地址寄存器AR。

控制器发出的控制信号:rsl→GR,(rsl)→ALU,disp→ALU(将rsl的内容与disp送ALU);“+”(加法命令送ALU);ALU→AR(有效地址送地址寄存器)。

③取数周期

到存储器取数。

控制器发出的控制信号:AR→AB,W/R=0,M/IO=1;DB→DR(将地址寄存器内容送地址总线,同时发访存读命令,存储器读出数据送数据总线后,打入数据寄存器)。

④执行周期

进行加法运算,结果送寄存器,并根据运算结果置状态位N,Z,V,C。

控制器送出的控制信号:rs,rd→GR, (rs)→ALU,DR→ALU(两个源操作数送ALU);

ALU→rd(运算结果送寄存器rd)

以上就是2021计算机考研复习知识点:指令执行过程。更多2021计算机考研复习知识点,持续更新中。

热门推荐

文都教育 各科目2020考研真题答案及解析汇总(预测)

2020考研真题解析直播课