2020考研计算机组成原理知识点:指令格式
2019.05.06 08:41

  2020年计算机考研复习已经开始,新东方在线在此整理了2020考研计算机组成原理知识点:指令格式,希望能帮助大家!

  指令格式

  1. 指令的基本格式

  计算机是通过执行指令来处理各种数据的。为了指出数据的来源、操作结果的去向及所执行的操作,一条指令必须包含下列信息:

  (1)操作码,具体说明了操作的性质及功能。

  (2)操作数的地址。

  (3)操作结果的存储地址。

  (4)下一条指令的地址。

  从上述分析可知,一条指令实际上包括两种信息即操作码和地址码。

  操作码(operation code)用来表示该指令所要完成的操作(如加、减、乘、除、数据传送等),其长度取决于指令系统中的指令条数。

  地址码用来描述该指令的操作对象,或者直接给出操作数或者指出操作数的存储器地址或寄存器地址(即寄存器名)。

  2. 定长操作码指令格式

  1)零地址指令

  OPCODE——操作码

  指令中只有操作码,而没有操作数或没有操作数地址。这种指令有两种可能:

  (1)无需任何操作数,如空操作指令,停机指令等。

  (2)所需的操作数是默认的。如堆栈结构计算机的运算指令,所需的操作数默认在堆栈中,由堆栈指针SP隐含指出,操作结果仍然放回堆栈中。又如Intel 8086的字符串处理指令,源、目的操作数分别默认在源变址寄存器SI和目的变址寄存器DI所指定的存储器单元中。

  2)一地址指令

  OPCODE——操作码

  A——操作数的存储器地址或寄存器名

  指令中只给出一个地址,该地址既是操作数的地址,又是操作结果的存储地址。如加1,减1和移位等单操作数指令均采用这种格式,对这一地址所指定的操作数执行相应的操作后,产生的结果又存回该地址中。

  在某些字长较短的微型机中(如早期的Z80,Intel8080,MC6800等),大多数算术逻辑指令也采用这种格式,第一个源操作数由地址码A给出,第二个源操作数在一个默认的寄存器中,运算结果仍送回到这个寄存器中,替换了原寄存器内容,通常把这个寄存器称累加器。

  3)二地址指令

  OPCODE——操作码

  A1——第一个源操作数的存储器地址或寄存器地址。

  A2——第二个源操作数和存放操作结果的存储器地址或寄存器地址。

  这是最常见的指令格式,两个地址指出两个源操作数地址,其中一个还是存放结果的目的地址。对两个源操作数进行操作码所规定的操作后,将结果存入目的地址,在本例中即为A2指定的地址

  4)三地址指令

  OPCODE——操作码

  A1——第一个源操作数的存储器地址或寄存器地址

  A2——第二个源操作数的存储器地址或寄存器地址

  A3——操作结果的存储器地址或寄存器地址

  其操作是对A1,A2指出的两个源操作数进行操作码(OPCODE)所指定的操作,结果存入A3中。

  5)多地址指令

  在某些性能较好的大、中型机甚至高档小型机中,往往设置一些功能很强的,用于处理成批数据的指令,如字符串处理指令,向量、矩阵运算指令等。

  为了描述一批数据,指令中需要多个地址来指出数据存放的首地址、长度和下标等信息

  3. 扩展操作码指令格式

  设某机器的指令长度为16位,包括4位基本操作码字段和三个4位地址字段,其格式下:

  OPCODE(4)              A1(4)            A2(4)             A3(4)

  4位基本操作码有16个码点(即有16种组合),若全部用于表示三地址指令,则只有16条。但是,若三地址指令仅需15条,两地址指令需15条,一地址指令需15条,零地址指令需16条,共61条指令,应如何安排操作码?

  显然,只有4位基本操作码是不够的,必须将操作码的长度向地址码字段扩展才行。

  一种可供扩展的方法和步骤如下:

  (1)15条三地址指令的操作码由4位基本操作码从0000~1110给出,剩下一个码点1111用于把操作码扩展到A1,即4位扩展到8位;

  (2)15条二地址指令的操作码由8位操作码从11110000~11111110给出,剩下一个码点11111111用于把操作码扩展到A2,即从8位扩展到12位;

  (3)15条一地址指令的操作码由12位操作码从111111110000~111111111110给出,剩下的一个码点111111111111用于把操作码扩展到A3,即从12位扩展到16位;

  (4)16条零地址指令的操作码由16位操作码从1111111111110000~1111111111111111给出。


MORE+

    相关阅读 MORE+

    版权及免责声明
    1.凡本网注明"稿件来源:新东方在线"的所有文字、图片和音视频稿件,版权均属北京新东方迅程网络科技有限公司所有,任何媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发表。已经本网协议授权的媒体、网站,在下载使用时必须注明"稿件来源:新东方在线",违者本网将依法追究责任。
    2.本网末注明"稿件来源:新东方在线"的文/图等稿件均为转载稿,本网转载出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如其他媒体、网站或个人从本网下载使用,必须保留本网注明的"稿件来源",并自负版权等法律责任。如擅自篡改为"稿件来源:新东方在线”,本网将依法追究责任。
    3.如本网转载稿涉及版权等问题,请作者致信weisen@xdfzx.com,我们将及时外理

    Copyright © 2011-202

    All Rights Reserved