标签:under 更新 ati lin 原来 结束 mdr weight ready
一条指令的运行【一条指令在计算机中是怎么被运行的】
想要了解这个静态的结构,一个有效的方方法是观察其动态的运行过程
接下来是模型机是怎么运行的
执行指令是运行过程的核心,理解一条指令是如何被执行的
一,取指:控制器将指定地址->存,存得到给定地址和指令内容->控制器
例子:
指令格式:ADD R0 [6] ([]:存储单元中的内容)
具体:通用寄存器R0 + [6] = 结果 更新到R0
草稿图
运行前的原状态:存储器中[6] 0010 存放数字2的机器码,
CPU中指令放PC,另一个操作书放R0
运行过程:从PC出发,指令的机器码传到地址寄存器MAR,地址寄存器MAR经过地址总线(同时,cpu的控制电路传送read信号),
MAD接到指令地址码后经过地址译码在存储单元里找到[10101010](我们假设ADD指令)
ADD指令找到后送到数据寄存器MDR中,MDR经过数据总线送到cpu中的MDR(同时,存储器的控制逻辑传发送ready信号),
在cpu中,MDR经过内部总线送到了IR中(指令寄存器)。取指基本完成。
随即更新PC中的指令,取指完成
今日小结:
到这里,原来取到一条指令的具体过程是这样的
取址 = 指令从IR -> 存储器 -> cpu = 通过指令地址找地址到找到地址后更新下一条指令结束取指,这就是一条指令取的过程。
了解一个静态的结构一个有效的方式是观察其动态的过程
标签:under 更新 ati lin 原来 结束 mdr weight ready
原文地址:https://www.cnblogs.com/32079nezha/p/11402763.html