计算机如何执行一条机器指令
文章目录
- 指令运行过程:
- 微程序控制基本概念:
- 几个周期区别
- 寻址方式:
指令运行过程:
在上篇我们谈到,计算机处理一段程序,就会将程序翻译成机器指令,然后执行完成相应的任务。执行指令的过程分为取指令阶段、分析取数阶段和执行阶段。
1.取指阶段:
图中概念解释:
PC(程序计数器),MAR(存储地址寄存器),CU(控制单元),IR(指令寄存器)
AB(地址总线) ,DB(数据总线), CB(控制总线)。
取指令阶段完成的任务是将现行指令从主存中取出来并送至指令寄存器中去,具体的操作如下:
① 将程序计数器(PC)中的内容先送至存储器地址寄存器(MAR),然后送至地址总线(AB).
② 由控制单元(CU)经控制总线(CB)向存储器发读命令.③ 从主存中取出的指令通过数据总线(DB)送到存储器数据寄存器(MDR).
④ 将MDR的内容送至指令寄存器(IR)中.
⑤ 将PC的内容递增,为取下一条指令做好准备.
2.分析取数阶段:
取出指令后,指令译码器(ID)可识别和区分出不同的指令类型.此时计算机进入分析取数阶段,以获取操作数.由于各条指令功能不同,寻址方式也不同,所以分析取数阶段的操作是各不相同的.
对于无操作数指令,直接进入执行阶段。
取数要计算操作数有效地址。对于不同的寻址方式,有效地址的计算方法是不同的,有时需要多次访问主存才能取出操作数(间接寻址)。如果通用寄存器中有,则不需要访问主存。
3.执行阶段:
完成指令规定的各种操作,形成稳定的运算结果,并存储起来。
计算机的基本工作过程就是取指令、取数、执行指令,然后再取下一条指令… ,如此周而复始,直到指令或外来的干预为止。
微程序控制基本概念:
微程序设计技术的实质就是将程序设计和存储技术相结合。用程序设计的思想组织设计控制逻辑,将控制信号编成控制字(微指令),在把微指令组合成微程序,从而对计算机发号施令。 这项技术最早是剑桥大学教授提出,由IBM在1964年成功在IBM360系列机采用并发展起来。现在的计算机基本都是微程序控制的计算机。
- 微命令:
一条机器指令可以分解成一个微操作序列,这些微操作是计算机中最基本的、不可再分解的操作.在微程序控制的计算机中,将控制部件向执行部件发出的各种控制命令叫做微命令,它是构成控制序列的最小单位.
例如:打开或关闭某个控制门的电位信号、某个寄存器打入脉冲等。
微操作:
微命令和微操作是一一对应的。微命令是微操作的控制信号,微操作是微命令的操作过程。微指令:
微指令是指控制存储器中的一个单元的内容,即控制字,是若干个微命令的集合.存放控制字的控制存储器的单元地址就称为微地址微程序:
一系列微指令的有序集合就是微程序。每一条机器指令都对应一个微程序。
几个周期区别
一个振荡周期=一个时钟周期;
一个机器周期=六个状态周期;
一个状态周期=两个节拍;
一个节拍=一个时钟周期;
一个指令周期=N个机器周期;
综上:1个指令周期=N个机器周期=6N个状态周期=12N个节拍=12N个时钟周期=12N个振荡周期
时钟周期:一个脉冲所需要的时间,为时钟晶振频率的倒数
指令周期:执行一条指令所需要的时间,是从取指令、分析指令到执行完指令所需的全部时间
机器周期:计算机中,常把一条指令的执行过程划分为若干个阶段,每一个阶段完成一项工作。每一项工作称为一个基本操作,完成一个基本操作所需要的时间称为机器周期,所以一个指令周期一般由若干个机器周期组成。
寻址方式:
立即寻址方式
操作数包含在指令中,它作为指令的一部分,跟在操作码后存放在代码段。这种操作数称为立即数。立即寻址方式所提供的操作数紧跟在操作码后面,与操作码一起放在指令代码段中,不需要到其他地址单元中去取。这种寻址方式主要用于给寄存器或存储单元赋初值的场合。立即寻址方式是这七种寻址方式中速度最快的寻址方式。
寄存器寻址方式
寄存器寻址的特点是操作数在CPU内部的寄存器中,在指令中指定寄存器号。由于操作数在寄存器中,不需要通过访问存储器来取得操作数,所以采用寄存器寻址方式的指令执行速度较快。
直接寻址方式
直接寻址的操作数在存储器中,指令直接包含有操作数的有效地址。
寄存器间接寻址方式
寄存器间接寻址的操作数在存储器中,操作数有效地址在寄存器中
寄存器相对寻址方式
该寻址方式是以指定的寄存器内容,加上指令中给出的位移量(8位或16位),并以一个段寄存器为基准,作为操作数的地址。指定的寄存器一般是一个基址寄存器或变址寄存器。
基址变址寻址方式
基址加变址寻址方式是指将寄存器(该寄存器一般指基址寄存器)的内容与指令中给出的地址偏移量相加,从而得到一个操作数的有效地址。
相对基址变址寻址方式
操作数在存储器中,操作数的有效地址由基址寄存器之一的内容与变址寄存器之一的内容及指令中给定的位移量相加得到。
计算机如何执行一条机器指令相关推荐
- 【最全!最完整解析!】 计算机中,执行一条指令所需要的时间称为指令周期,完成一项基本操作所需要的时间称为机器周期,时钟脉冲的重复周期称为重复周期。因此,()
计算机中,执行一条指令所需要的时间称为指令周期,完成一项基本操作所需要的时间称为机器周期,时钟脉冲的重复周期称为重复周期.因此,() A. 时钟周期大于机器周期 B. 时钟周期等于机器周期 C. 机器 ...
- 计算机要执行一条指令,cpu所涉及的操作应该包括下列的,计算机基础题模拟试题「附答案」...
一.单选题 1.计算机中能直接被CPU存取的信息是存放在___A____ 中. A.内存 B.光盘 C.硬盘 D.软盘 2.D/A转换器的功能是将___A_______. A.数字量转换为模拟量 B. ...
- HTML在计算机中指什么,计算机正在执行的指令存放在什么中
计算机正在执行的指令存放在内存中. 在计算机中,操作要求和操作数地址都由二进制数码表示,分别称作操作码和地址码,整条指令以二进制编码的形式存放在存储器中.这里存储器,就是内存. 其作用是用于暂时存放C ...
- Linux 从头学 01:CPU 是如何执行一条指令的?
摘自:Linux 从头学 01:CPU 是如何执行一条指令的? 作者:IOT物联网小镇 发布时间:2021-07-02 08:22:43 网址:https://blog.csdn.net/jchen1 ...
- 计算机要执行一条指令,cpu所涉及的操作应该包括下列的,计算机应用基础学习指导...
1. 一般认为,信息(information)是 2. 信息资源的开发和利用已经成为独立的产业,即. 3. 信息技术是在信息处理中所采取的技术和方法,也可看作是的一种 技术. 4. 所谓3C技术是指 ...
- 计算机指令长度是固定的,第四次作业 指令系统 设计算机A有60条指令,指令操作码6位固定长度...
第四次作业 指令系统 设计算机A有60条指令,指令操作码6位固定长度 第四次作业: 指令系统 1, 设计算机A有60条指令,指令操作码6位固定长度编码,从000000到111011.其后 继产品B需要 ...
- 计算机指令长度是固定的,第四次作业 指令系统 设计算机A有60条指令,指令操作码6位固定长...
第四次作业 指令系统 设计算机A有60条指令,指令操作码6位固定长 (3页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 3.9 积分 第四次作业 指令系统 ...
- 计算机正在执行的指令在,在计算机中,保存当前正在执行的指令的寄存器为(1),存放当前指令地址的寄存器叫(2)。在顺序执行指令_快考试...
(单选题) 在计算机中,保存当前正在执行的指令的寄存器为(1),存放当前指令地址的寄存器叫(2).在顺序执行指令的情况下(存储器按字节编址,指令字长32位),每执行一条指令,使程序计数器自动加(3). ...
- 如何执行一条汇编指令
在电脑中执行一条指令主要又三个步骤: (1)在指定地址上写入一条汇编指令 (2)使cs寄存器与ip寄存器指向指令所在的地址 (3)开始执行 (1)在指定地址写入一条汇编指令: 终端上常用的命令有:R命 ...
最新文章
- 怎么申请微信支付接口
- 关于shared library的描述
- wdpc V3 phpmyadmin打不开的一种解决方式(实测有效)
- c++ template(5)模板实战
- jboss数据源配置
- 关于NPN和PNP传感器的应用区别(转载)
- jenkins+svn+maven+ssh 部署配置详细记录
- PageHelper分页插件使用
- php1到12取值,零起点php入门第12课-php数组(1)
- android高德地图自动缩放比例,【Android】高德地图 缩放级别及像素以及地图上的点转化成屏幕上的点...
- 《Linux Shell脚本攻略》读书笔记第三章 以文件之名
- NHibernate Inheritance Mapping 继承映射
- java编译通过,运行却提示找不到或无法加载主类
- 实对称矩阵特征值按大小排序
- 分享一下泛微OA与用友NC对接自动生成凭证的任务(一)
- Windows10中同时安装MySQL5和MySQL8
- 【日志分析】Window日志分析
- 傻傻分不清楚?深入探讨 filter 与 backdrop-filter 的异同
- 机器学习笔记09:支持向量机(二)-核函数(Kernels)
- 【ChatGPT调教】调教ChatGPT案例