计算机组成原理(华科版)第四章 指令系统

上传人:飞*** 文档编号:46502146 上传时间:2018-06-26 格式:PPT 页数:43 大小:161KB
返回 下载 相关 举报
计算机组成原理(华科版)第四章 指令系统_第1页
第1页 / 共43页
计算机组成原理(华科版)第四章 指令系统_第2页
第2页 / 共43页
计算机组成原理(华科版)第四章 指令系统_第3页
第3页 / 共43页
计算机组成原理(华科版)第四章 指令系统_第4页
第4页 / 共43页
计算机组成原理(华科版)第四章 指令系统_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《计算机组成原理(华科版)第四章 指令系统》由会员分享,可在线阅读,更多相关《计算机组成原理(华科版)第四章 指令系统(43页珍藏版)》请在金锄头文库上搜索。

1、 计算机组成原理 第四章 指令系统1第四章指令系统计算机组成原理 第四章 指令系统24.1 指令系统的发展与性能计算机的性能与它所设置的指令系统 有很密切的关系,而指令系统的设置 又与机器的硬件结构紧密相关。通常 性能好的计算机都要设置指令丰富、 功能齐全、通用性强、使用方便高效 的指令系统,而这些需要复杂的硬件 结构来支持。计算机组成原理 第四章 指令系统34.1.1 指令系统的发展指令就是指挥计算机执行某种操作的命令。微指令是微程序级的命令,属于硬件;宏指令是由若干条机器指令组成的软件指令,属于软件;机器指令则介于微指令与宏指令之间,通常简称为指令。一台计算机中所有机器指令的集合,称为该计

2、算机的指令系统。计算机组成原理 第四章 指令系统420世纪70年代末期,随着大规模集成电路VLSI技术的 飞速发展,硬件成本不断下降,而软件成本不断上升。为 增加计算机的功能,以及缩小指令系统与高级语言的差异 ,以便于高级语言的编译,降低软件开发成本,于是产生 了以增加指令数和设计复杂指令为手段的计算机,大多数 计算机的指令系统多达几百条,称这些计算机为复杂指令 系统计算机,简称CISC(Complex Instruction Set Computer )。IBM公司在1975年开始探讨指令系统的合理性问题, John cocke提出了精简指令系统的想法。1982年,美国加州 伯克利大学、斯坦

3、福大学、IBM公司都先后研制出便于VLSI 技术实现的精简指令系统计算机,简称RISC(Reduced Instruction Set Computer)。1983年后,RISC计算机商品 化。计算机组成原理 第四章 指令系统54.1.2 指令系统的性能1. 完备性完备性是指用汇编语言编写各种程序时,指令系统直接提供 的指令足够使用,而不必用软件来实现。完备性要求指令系统丰 富、功能齐全、使用方便高效。 2. 高效性高效性是指利用该指令系统所编写的程序能够高效率地运行。 高效率主要表现在程序占据存储空间小,执行速度快。 3. 规整性规整性包括指令系统的对称性、匀齐性、指令格式和数据格 式的一致

4、性。4. 兼容性系列机各机种之间具有相同的基本结构和共同的基本指令集, 因而,指令系统是兼容的,即各机种上基本软件可以通用。计算机组成原理 第四章 指令系统64.1.3 计算机语言与硬件结构的关系一台计算机能够直接识别并执行的语言并不是高级语言,而是一种用二进制码表示的、由一系列指令组成的机器语言。因此,任何问题不管使用那一种计算机语言(汇编语言或某种 高级语言)描述,都必须通过翻译程序转换成相应的机器语言后才能执行。机器语言存在着可读性差、不易编程、不易维护等许多缺陷,这就给编写程序带来许多困难。但是,可以用预先规定的符号来分别替代用二进制码表示的操作码、操作数或地址,这种用助记符来表示二进

5、制码指令序列的语言,称为汇编语言 (Assembly Language),它基本上是与机器语言一一对应的。计算机组成原理 第四章 指令系统7指令格式就是用二进制代码表示的一条指令的结构形式 ,通常由操作码和地址码两种字段组成。操作码字段表征指 令操作的性质和功能,地址码字段通常指定参与操作的操作 数的地址。一条指令的指令格式形式为:计算机指令格式的设定一般与机器的字长、存储器的容 量以及指令的功能有关。42 指令格式操作码字段地址码字段计算机组成原理 第四章 指令系统84.2.1 指令操作码与地址码1. 操作码2.地址码指令中参加运算的操作数既可存放在主存储器中,也可存放在寄存器中,地址码应该

6、指出该操作数所在的存储 器地址或寄存器地址。根据指令的操作数地址码的数目的不同,可将指令分成零地址指令、一地址指令、二地址指令、三地址指令和 多地址指令等多种格式。操作码指出该指令应该执行什么性质的操作和具有何种功 能。不同的指令用操作码字段的不同编码来表示,每一种 编码代表一种指令。计算机组成原理 第四章 指令系统9(1) 三地址指令格式其格式为OPCODE操作码,A1第一个源操作数存储器地址或寄存器地址, A2第二个源操作数存储器地址或寄存器地址, A3操作结果的存储器地址或寄存器地址。其数学形式描述为:(A1) OP (A2)A3OPCODEA1A2A3计算机组成原理 第四章 指令系统1

7、0(2) 二地址指令格式其格式为OPCODE操作码,A1第一个源操作数存储器地址或寄存器地址, A2第二个源操作数和存放操作结果的存储器地址或 寄存器地址。 其数学形式描述为: (A1) OP (A2)A1或者 (A1) OP (A2)A2OPCODE A1 A2计算机组成原理 第四章 指令系统11(3) 一地址指令格式其格式为OPCODE操作码,A操作数的存储器地址或寄存器地址。 其数学形式描述为: OP (A)A 或者 (AC) OP (A)ACOPCODE A计算机组成原理 第四章 指令系统12(4) 零地址指令格式其格式为OPCODE操作码。(5) 多地址指令格式性能较好的大、中型计算

8、机甚至高档小型计算机中, 往往设置一些功能很强的,用于处理成批数据的指令,例 如,字符串处理指令,向量、矩阵运算等指令。为了描述 一批数据,指令中往往需要用多个地址来指出数据存放的 首地址、长度和下标等信息。例如 CDC STAR100矩阵 运算指令,就有七个地址码段,用来指明两个矩阵的存储 情况以及结果的存放情况。OPCODE计算机组成原理 第四章 指令系统13从存放操作数的物理位置来划分,指令格式主要有三 种类型。第一种为存储器存储器(SS)型指令,即参与操作的数据 都放在内存里。第二种为寄存器寄存器(RR)型指令,执行这类指令过程 中,需要多个通用寄存器或专用寄存器,从寄存器中取操 作数

9、,把操作结果存放到另一寄存器中。第三种为寄存器存储器(RS)型指令,执行此类指令时, 既要访问内存单元,又要访问寄存器。目前在计算机系统结构中,通常一个指令系统中指令字的 长度和指令中的地址结构并不是单一的,往往采用多种格 式混合使用,这样可以增强指令的功能。计算机组成原理 第四章 指令系统144.2.2 指令字长度与扩展方法1. 指令字长度 指令字中二进制代码的位数,称为指令字长度。如上所述,指令格式的设定一般与机器的字长、存储器的容量以 及指令的功能有关。机器字长是指计算机能够直接处理的 二进制数据的位数,是计算机的一个重要技术指标。指令字长度等于机器字长度的指令,称为单字长指令;指令字长

10、度等于半个机器字长度的指令,称为半字长指 令;指令字长度等于两个机器字长度的指令,称为双字长 指令;余下以此类推。例如IBM 370系列的指令格式有16b( 半字)的,有32b(单字)的,还有48b(一个半字)的。计算机组成原理 第四章 指令系统152. 指令操作码扩展方法指令操作码通常有两种编码格式,一种是固定格式,即操作码的长度固定,且集中放在指令字的一个字段中。这种格式可以简化硬件设计,减少指令译码时间,一般用在字长较长的大、中型机和超级小型机以及 RISC机上,如IBM 370和VAX 11系列机,其操作码长度均为8b,可表示256种指令。另一种是可变格式,即操作码的长度可变,且分散地

11、放在指令字的不同字段中。这种格式能够有效地压缩程序中操作码的平均长度,在字长较短的微型机上广泛采用。如 Z80、Intel 8086等,操作码的长度都是可变的。计算机组成原理 第四章 指令系统16例如,某机器的指令字长度为16b,包括4b基本操作码字段 和三个4b地址字段,其指令格式为: 15 12 11 8 7 4 3 04b基本操作码有16种组合,若全部用于表示三地址指令, 则只有16条。但是,如果三地址指令仅需15条,两地址指令 需15条,一地址指令需15条,零地址指令需16条,共61条指 令,应该如何安排操作码?显然,只有4b基本操作码是不够 的,必须将操作码的长度向地址码字段扩展才行

12、。这可采用 如下操作码扩展方法:(1) 三地址指令仅需15条,由4b基本操作码的0000 1110组合给出,剩下的一个组合1111用于把操作码长度扩展 到 A1,即4b扩展到8b;OPCODE A1 A2 A3计算机组成原理 第四章 指令系统17(2) 二地址指令需15条,由8b操作码的11110000 11111110组合给出,剩下一个11111111用于把操作码长度 扩展到 A2,即从8b扩展到12b;(3) 一地址指令需15条,由12b操作码的111111110000 111111111110组合给出,剩下一个组合111111111111用 于把操作码长度扩展到A3,即从12b扩展到16

13、b;(4) 零地址指令需16条,由16位操作码的 11111111111100001111111111111111组合给出。 采用上述指令操作码扩展方法后,三地址指令、二地址指 令和一地址指令各15条,零地址指令16条,共计61条指令 。计算机组成原理 第四章 指令系统184.2.3 指令格式举例 1. 微型计算机Intel 8086/8088指令格式Intel 8086是Intel公司于1978年推出的16b的微型计算机 ,字长16b。Intel 8088是在8086基础之上推出的扩展型准 16b微型机,字长16b,但其外部数据总线8b,这样便于与 众多的8b外部设备连接。由于Intel 8

14、086/8088指令字较短, 所以指令采用变长指令字结构。指令格式包含单字长指令 、双字长指令、三字长指令等多种。 2. 大型计算机IBM 370系列指令格式IBM 370系统是IBM公司于1970年推出的32b大型计算机 ,1983年IBM又推出了370的扩充结构:IBM 370 XA(eXtended Architecture),首次在3080系列上实现,后 来又有扩充结构ESA370,于1986年推出3090系列。 ESA 370增加了指令格式,称为扩充格式,有16b操作码,包 括了向量运算与128b长度的浮点运算指令。计算机组成原理 第四章 指令系统193. SPARC计算机的指令格式

15、SPARC是Sun Microsystem公司于1987年推出的精简指 令系统计算机(RISC),字长32b。SPARC共有三种指 令格式,格式1、格式2和格式3,如图所示:Sun Microsystem RISC SPARC指令格式计算机组成原理 第四章 指令系统2043 寻址方式当某个操作数或某条指令存放在某个存储单元时,其存储单元的编号,就是该操作数或指令在存储器中的地址。寻找并确定本条指令的数据(操作数)地址及下一条要执行的指令地址的方法,称为寻址方式。寻址方式分为两大类:指令寻址方式和操作数寻址方式。在主存中,指令寻址方式与操作数寻址方式交替进行,前者比较简单,后者比较复杂。计算机组成原理 第四章 指令系统214.3.1 指令的寻址方式所谓指令寻址方式,就是确定下一条将要执行的指令 地址的方法。指令寻址有两种基本方式:顺序寻址方式和 跳跃寻址方式。计算机组成原理 第四章 指令系统221. 顺序寻址方式指令在内存中是按地址顺序安排的,执行程序时,通常是一条指令接 一条指令顺序进行。即从存储器取出第一条指令,然后执行第一条指令 ;接着从存储器取出第二条指令,再执行第二条指令;接着再取出第三 条指令,执行第三条指令这种程序按指令地址顺序执行的过程,称 为指令的顺序寻址方式。指令的顺序

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 其它考试类文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号