3.7指令周期执行模板【易忘】


想象一下,计算机就像一个非常听话的机器人,它按照一张详细的步骤清单来执行任务。这份文件就是那张清单,告诉计算机在执行指令时应该做些什么。


取指令周期:
首先,计算机需要知道要执行哪条指令。它通过一个叫做“程序计数器”(PC)的东西来跟踪当前要执行的指令地址。
然后,它把这个地址告诉“内存地址寄存器”(MAR),就像告诉朋友你想要哪本书一样。
接着,计算机让内存把那个地址上的内容读出来,放到“内存数据寄存器”(MDR)里。
计算机再把这些内容传到“指令寄存器”(IR),就像把书的内容记在脑子里。
然后,计算机会分析这个指令,看看它是要做什么,比如加法、减法还是别的操作。
最后,计算机会更新PC,让它指向下一条指令的地址,就像翻到下一页书。


间址周期:
有时候,指令里会包含一个地址,但是这个地址并不是最终要操作的数据地址。计算机需要先找到这个地址,然后从那里读取真正的数据地址。


指令执行周期:
非访存指令:有些指令不需要访问内存,比如清零、取反、移动数据等。
访存指令:有些指令需要访问内存,比如加法、存数、取数等。
加法指令:计算机会从内存中读取数据,然后把它加到累加器里。
存数指令:计算机会把累加器里的数据存到内存的某个位置。
取数指令:计算机会从内存的某个位置读取数据,然后放到累加器里。
转移指令:
有时候,计算机需要跳到不同的指令去执行,这就像是跳到书的不同章节。
无条件转移:不管发生什么,计算机都会跳到指定的地址去执行。
条件转移:计算机会先检查一些条件,比如某个标志位,然后决定是否跳转。


总的来说,这份文件就像是计算机的“操作手册”,告诉它在执行每条指令时应该遵循的步骤。

 

知识点讲解


计算机指令周期执行的模板,主要用于说明计算机在执行指令时的基本步骤。指令周期是CPU执行指令时的一系列操作步骤,通常包括取指令、执行指令等过程。下面是对文件中提到的各个步骤的详细解释:
取指令周期:
 PC→MAR :程序计数器(PC)的内容被加载到内存地址寄存器(MAR)中。
 1→R :发出读命令,告诉存储器读取数据。
 M(MAR)→MDR :存储器将MAR指向的内存单元中的数据读入到内存数据寄存器(MDR)。
 MDR→IR :MDR中的数据被传送到指令寄存器(IR)。
 OP(IR)→CU :IR中的操作码(OP)被传送到控制单元(CU)进行译码。
 (PC)+1→PC :PC的值增加1,为下一条指令做准备。
间址周期:
 Ad(IR)→MAR :将指令寄存器中的地址码(形式地址)传送到MAR。
之后的过程与取指令周期相同,用于读取有效地址。
指令执行周期:
非访存指令:不需要访问内存的指令。
 CLA :清零累加器(ACC)。
 COM :取反操作。
 SHR :算数右移。
 CSL :循环左移。
 STP :停机指令。
访存指令:
加法指令  ADD X :
 Ad(IR)→MAR :将指令中的地址码传送到MAR。
之后的过程与取指令周期相同,用于读取数据到MDR。
 (ACC)+(MDR)→ACC :将累加器与MDR中的数据相加,结果存回ACC。
存数指令  STA X :
 Ad(IR)→MAR :将指令中的地址码传送到MAR。
 1→W :发出写命令。
 ACC→MDR :将ACC的内容传送到MDR。
 MDR→M(MAR) :将MDR的内容写入到内存的指定位置。
取数指令  LDA X :
过程与存数指令类似,但最后是将MDR的内容传送到ACC。
转移指令:
无条件转移  JMP X :将指令中的地址码传送到PC,实现跳转。
条件转移  BAN X :根据条件(如标志位)决定是否跳转。
这个模板展示了计算机在执行不同类型的指令时,需要经过的一系列步骤,包括数据的读取、写入、寄存器之间的数据传输以及跳转等操作。
 

 

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值