精华内容
下载资源
问答
  • 计算机如何执行一条机器指令

    千次阅读 2019-10-11 11:09:38
     在上篇我们谈到,计算机处理段程序,就会将程序翻译成机器指令,然后执行完成相应的任务。执行指令的过程分为取指令阶段、分析取数阶段和执行阶段。 1.取指阶段: 图概念解释: PC(程序计数器),MAR...

    指令运行过程:

     在上篇我们谈到,计算机处理一段程序,就会将程序翻译成机器指令,然后执行完成相应的任务。执行指令的过程分为取指令阶段、分析取数阶段和执行阶段。

    • 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位),并以一个段寄存器为基准,作为操作数的地址。指定的寄存器一般是一个基址寄存器或变址寄存器。

    • 基址变址寻址方式

      基址加变址寻址方式是指将寄存器(该寄存器一般指基址寄存器)的内容与指令中给出的地址偏移量相加,从而得到一个操作数的有效地址。

    • 相对基址变址寻址方式

      操作数在存储器中,操作数的有效地址由基址寄存器之一的内容与变址寄存器之一的内容及指令中给定的位移量相加得到。

    展开全文
  • 首先看一道题目: ...比如指令包含取指,间址,执行,中断等机器指令!设计微程序的时候针对的是机器指令一设计。那么个微程序的周期对应的就是个机器周期了。另外,CPU周期也等于机器周期。以上。

    首先看一道题目:

    通常情况下,一个微程序的周期对应一个机器周期

    这是之前未认真辨析过的。
    我们知道一个指令周期可以分为若干个机器周期,那么对应的指令就对应若干个机器指令。

    比如一个指令包含取指,间址,执行,中断等机器指令!设计微程序的时候针对的是机器指令一对一设计。

    那么一个微程序的周期对应的就是一个机器周期了。

    另外,CPU周期也等于机器周期,即CPU一次以处理一条机器指令为基本单位。一条机器指令要么是取指,要么是间址,要么是执行,要么中断等,任务专一,CPU好处理,所以CPU周期这个概念也等同于微程序的周期,也等于机器周期。

    以上。

    展开全文
  • 机器周期又称为CPU周期,一个机器周期所对应的指令称为机器指令,一个机器周期就对应着一个具体指令的执行,即CPU一次以处理一条机器指令为基本单位。一条机器指令要么是取指,要么是间址,要么是执行,要么中断等,...

    1.它们之间的关系

    先上图:
    他们之间都是集合的关系,括号里的都是同级的对应的概念:
    在这里插入图片描述

    对于上图的解释

    (1)简而言之:微指令是微命令的集合,微程序是微指令的集合,指令是机器指令的集合

    (2)微命令与微操作是一对对应的概念
    微命令是微操作的控制信号
    微操作是微命令的执行过程

    (3)微程序和机器指令是一对对应的概念

    ​ 一条机器指令对应一个微程序

    ​ 机器周期所对应的指令就称为机器指令

    机器周期又称为CPU周期,一个机器周期所对应的指令称为机器指令,一个机器周期就对应着一个具体指令的执行,即CPU一次以处理一条机器指令为基本单位。一条机器指令要么是取指,要么是间址,要么是执行,要么中断等,任务专一,CPU好处理,所以CPU周期这个概念也等同于微程序的周期,也等于机器周期。

    2.如果没搞清上述关系,那么我们先介绍一下这几个周期的概念:

    在这里插入图片描述

    (1)时钟周期:一个节拍。一个时钟周期可完成一个或几个须同时执行的操作。(又称为T周期,节拍,时钟脉冲)
    (2)机器周期:所有制令执行过程中的几个基准时间(CPU周期)若干个机器周期表示,一个机器周期有包含若干个时钟周期。
    (3)指令周期:CPU从驻村中取出并执行一条指令的时间成为指令周期。
    关系:一个指令周期包含若干个机器周期(CPU周期),一个机器周期包含若干个时钟周期

    3.拓展:

    CPI:每条指令执行的时钟周期数
    MIPS:是每秒处理了多少百万条指令
    计算公式:MIPS=主频/CPI * 10的6次方

    展开全文
  • 一条cpu指令执行过程

    千次阅读 2017-09-12 23:07:58
    计算机每执行一条指令都可分为三个阶段进行。即取指令-----分析指令-----执行指令。 取指令的任务是:根据程序计数器PC的值从程序存储器读出现行指令,送到指令寄存器。 分析指令阶段的任务是:将指令寄存器的...
    计算机每执行一条指令都可分为三个阶段进行。即取指令-----分析指令-----执行指令。
    
    取指令的任务是:根据程序计数器PC中的值从程序存储器读出现行指令,送到指令寄存器。
    
    分析指令阶段的任务是:将指令寄存器中的指令操作码取出后进行译码,分析其指令性质。如指令要求操作数,则寻找操作数地址。
    计算机执行程序的过程实际上就是逐条指令地重复上述操作过程,直至遇到停机指令可循环等待指令。
    
    一般计算机进行工作时,首先要通过外部设备把程序和数据通过输入接口电路和数据总线送入到存储器,然后逐条取出执行。但单片机中的程序一般事先我们都已通过写入器固化在片内或片外程序存储器中。因而一开机即可执行指令。
    
    下面我们将举个实例来说明指令的执行过程:
    
    开机时,程序计算器PC变为0000H。然后单片机在时序电路作用下自动进入执行程序过程。执行过程实际上就是取出指令(取出存储器中事先存放的指令阶段)和执行指令(分析和执行指令)的循环过程。
    
    例如执行指令:MOV A,#0E0H,其机器码为“74H E0H”,该指令的功能是把操作数E0H送入累加器,
    
    0000H单元中已存放74H,0001H单元中已存放E0H。当单片机开始运行时,首先是进入取指阶段,其次序是:
    1 程序计数器的内容(这时是0000H)送到地址寄存器;
    
    2 程序计数器的内容自动加1(变为0001H);
    
    3 地址寄存器的内容(0000H)通过内部地址总线送到存储器,以存储器中地址译码电跟,使地址为0000H的单元被选中;
    
    4 CPU使读控制线有效;
    
    5 在读命令控制下被选中存储器单元的内容(此时应为74H)送到内部数据总线上,因为是取指阶段,所以该内容通过数据总线被送到指令寄存器。至此,取指阶段完成,进入译码分析和执行指令阶段。
         由于本次进入指令寄存器中的内容是74H(操作码),以译码器译码后单片机就会知道该指令是要将一个数送到A累加器,而该数是在这个代码的下一个存储单元。所以,执行该指令还必须把数据(E0H)从存储器中取出送到CPU,即还要在存储器中取第二个字节。其过程与取指阶段很相似,只是此时PC已为0001H。指令译码器结合时序部件,产生74H操作码的微操作系列,使数字E0H从0001H单元取出。因为指令是要求把取得的数送到A累加器,所以取出的数字经内部数据总线进入A累加器,而不是进入指令寄存器。至此,一条指令的执行完毕。单片机中PC="0002H",PC在CPU每次向存储器取指或取数时自动加1,单片机又进入下一取指阶段。这一过程一直重复下去,直至收到暂停指令或循环等待指令暂停。CPU就是这样一条一条地执行指令,完成所有规定
    展开全文
  • JVM机器指令

    千次阅读 2016-09-11 22:29:06
    而我们将.java 源代码编译成.class 文件,class文件便是Java虚拟机能够认识的二进制机器码,Java能够识别class文件信息机器指令,进而执行这些机器指令。那么,Java虚拟机是如何运行这些二进制的机器码的呢? ...
  • 指令字长度与机器字长

    千次阅读 2015-05-02 14:56:42
    指令中包含二进制代码的位数,称为指令字长度。计算机能直接处理的二进制数据的位数称为机器字长,它决定了计算机的运算精度,机器字长通常与主存单元的位数一致。 指令字长度等于机器字长的指令,称为单字长...
  • 关于Z-stack的延时,稍微总结几点使用可能需要注意的地方: 1 同样的代码,裸机实验和在Z-stack延时的时间可能是不一样的。 2 请注意CC2530是加强型的51单片机 3 在Z-stack不要滥用定时器 4 毫秒级的延时...
  • 指令周期指令周期是CPU从内存取出一条指令并执行这条指令的时间总和,一般由若干个机器周期组成,是从取指令、分析指令到执行完所需的全部时间。机器周期机器周期也叫CPU周期,由于CPU访问一次内存所花的时间较长,...
  • 指令周期: CPU每取出并执行一条指令所需的全部时间叫指令周期,也即CPU完成一条指令的时间叫指令周期 一般一条完整的指令包括:取指周期、间址周期、执行周期、中断周期。 JMP X:该指令指令周期只有取指周期...
  • 32位CPU包含的寄存器及其指令

    千次阅读 2015-07-31 10:22:43
    32位CPU所含有的寄存器: 4个数据寄存器(EAX、EBX、ECX和EDX) 2个变址和指针寄存器(ESI和EDI) 2个指针寄存器(ESP和EBP) 6个段寄存器(ES、CS、SS、DS、FS和GS) 1个指令指针寄存器(EIP) 1个标志寄存器(EFlags) 1、...
  • 《Java虚拟机原理图解》4.JVM机器指令

    万次阅读 多人点赞 2016-01-08 20:53:38
    JVM 位每个线程在内存分配了个虚拟机栈,来表示线程的运行状态和信息,如下所示: 为了给读者个直观的感受,我们定义个简单的Java类,然后执行这个运行这个类,逐步分析整个Java虚拟机的运行时信息的...
  • 时钟周期 指令周期 机器周期的理解

    千次阅读 2014-12-09 14:53:37
    时钟周期:时钟周期也称为振荡周期,定义为时钟脉冲频率的倒数(时钟周期就是单片机外接晶振的倒数,例如... 机器周期:计算机,常把一条指令的执行过程划分为若干个阶段,每一个阶段完成一项工作。每一项工作称为一
  • 处理器一条指令需要几个时钟周期

    千次阅读 2019-04-12 18:08:56
    个时钟周期内,CPU仅完成个最基本的动作。时钟周期是个时间的量。时钟周期表示了SDRAM所能运行的最高频率。更小的时钟周期就意味着更高的工作频率。  时钟周期是同步电路时钟基础频率的倒数。它以时间...
  • 机器字长、指令字长、存储字长的区别与联系

    万次阅读 多人点赞 2019-10-23 16:39:22
    机器字长:计算机能直接...指令字长一般都取存储字长的整数倍,如果指令字长等于存储字长的2倍,就需要2次访存来取出一条指令,因此取指周期是机器周期的2倍,若指令周期等于存储字长,则取指周期等于机器周期。 ...
  • 以下内容均来自网上查找,并根据个人理解进行整理,刚开始学习单片机...指令周期=N个机器周期; 综上:1个指令周期=N个机器周期=6N个状态周期=12N个节拍=12N个时钟周期=12N个振荡周期 时钟周期:个脉冲所需...
  • 跟随一条指令来看LLVM的基本结构

    千次阅读 2020-01-04 18:41:44
    LLVM是个很复杂的软件,了解LLVM的工作原理不是很容易,然而,对于刚开始接触LLVM整个框架的工作原理来说,详细而深入,不如广泛而浅显,所以了这篇文章。
  • 指令周期 机器周期 时钟周期

    千次阅读 2012-06-19 16:44:50
    在计算机,为了便于管理,常把一条指令的执行过程划分为若干个阶段,每一阶段完成一项工作。例如,取指令、存储器读、存储器写等,这每一项工作称为一个基本操作。完成一个基本操作所需要的时间称为机器周期。一般...
  • 经理的皮鞋湿了,但是却没有变胖,所以经理的皮鞋是人造革的。 刚刚写了篇文章: 不依赖OS编译器,不依赖库,用汇编/机器...值得提的是,这不是什么特别技术含量的东西,这只是个基本功,我在2006年的长春...
  • 一条指令周期包括若干个机器周期,一条机器周期又包括若干个时钟周期,时钟周期即振荡周期。 指令周期:取出一条指令并执行这条指令的时间。一般由若干个机器周期组成,是从取指令、分析指令到执行完所需的全部时间...
  • jmp指令机器码编写

    千次阅读 2016-06-12 14:24:19
    1.首先直接的jmp分3种 :   Short Jump(短跳转)机器码 EB rel8   只能跳转到256字节的范围内  ... 可跳至同个段的范围内的地址    Far Jump(远跳转)机器码EA ptr 16:16/32   
  • 时钟周期、机器周期、指令周期

    千次阅读 2018-10-07 17:36:11
    1.时钟周期  时钟周期也称为震荡周期, 定义为时钟脉冲的倒数, 是计算机最基本、最小的时间单位;在一个时钟周期内, CPU只完成最基本的动作... 在计算机, 为了便于管理, 通常把一条指令执行划分为若干个阶段...
  • 1、CPU=运算器+控制器,对应图灵机的“读写头”,但是图灵机的读写头可以自动取纸带上...5、机器指令周期/机器周期T:取指令-翻译指令-执行指令的一个周期所花费的时间,即执行一条指令所需要的时间。 6、主频F:每秒钟
  • jmp指令对应的机器

    千次阅读 2014-01-07 23:19:59
    jmp指令对应的机器码  (2012-08-27 20:18:26) 转载▼ 标签:  ...od随便打开个记事本,汇编几jmp指令,可以看到如下 地址 HEX 反汇编 010073B4 - E9 7B9E8787 JMP 8888123
  • 计算机基础 时间周期 机器周期 指令周期时钟周期 时钟周期也称为振荡周期,定义为时钟脉冲的倒数(可以这样来理解,时钟周期就是单片机外接晶振的倒数,例如12M的晶振,它的时间周期就是1/12 us),是计算机最...
  • Abstract:此篇文章讲述的是计算机存储器、控制器、运算器的基本结构组成以及指令的具体执行顺序。  CPU包括运算器和控制器, 而主机主要包括CPU和存储器。 内容参考于:哈工大计算机组成原理(刘宏伟) ...
  • 1.指令周期:是CPU的关键指标,指取出并执行一条指令的时间。一般以机器周期为单位,分单指令执行周期、双指令执行周期等。现在的处理器的大部分指令(ARM、DSP)均采用单指令执行周期。 2.机器周期:完成一个基本...
  •  其中 编译预处理阶段,预处理器读取c源程序,进行初步的转换,即对其中的伪指令(以#开头的指令)和特殊符号等进行处理后,翻译得到个ASCII码的中间文件main.i交给编译器。预处理过程在编译时处理包含其他...
  •  时钟周期也称为振荡周期,定义为时钟脉冲的倒数(时钟周期就是单片机外接晶振的倒数,例如12M的晶振,它的时钟周期就是1/12us),是计算机的最基本的、最小的时间单位。  在个时钟周期内,CPU仅完成个最...
  • 1,主频 主频 = 时钟频率,它是指CPU内部晶振的频率,常用单位为MHz,它反映...指令周期 :执行一条指令所需要的时间,一般包含若干个机器周期 5,CPI CPI 表示的是每条指令的平均时钟周期个数,即为执行一条指令...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 104,993
精华内容 41,997
关键字:

一条机器指令中包含的信息有