41指令系统的发展与性能要求

上传人:mg****85 文档编号:50732563 上传时间:2018-08-10 格式:PPT 页数:14 大小:102.50KB
返回 下载 相关 举报
41指令系统的发展与性能要求_第1页
第1页 / 共14页
41指令系统的发展与性能要求_第2页
第2页 / 共14页
41指令系统的发展与性能要求_第3页
第3页 / 共14页
41指令系统的发展与性能要求_第4页
第4页 / 共14页
41指令系统的发展与性能要求_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《41指令系统的发展与性能要求》由会员分享,可在线阅读,更多相关《41指令系统的发展与性能要求(14页珍藏版)》请在金锄头文库上搜索。

1、4.1指令系统的发展与性能要求4.1.1指令系统的发展计算机的程序是有一系列的机器指令组成的。指令就是要计算机执行某种操作的命令。从计算机组成的层次结构来说,计算机的指令有微指令、机器 指令和宏指令之分。微指令:是微程序级的命令,它属于硬件。宏指令:是由若干条机器指令组成的软件指令,它属于软件。机器指令:介于微指令和宏指令之间,通常简称为指令,每一 条指令可以完成一个独立的算术运算或逻辑运算操作。一台计算机中所有机器指令的集合,称为这台计算机的 指令系统。指令系统是表征一台计算机性能的重要因素,它的 格式与功能不仅直接影响到机器的硬件结构,而且也直接影响 到系统软件,影响到机器的适用范围。 下

2、面我们来看一下计算机指令系统的发展过程50年代:指令系统只有定点加减、逻辑运 算、数据传送、转移等十几至几十条指 令。 60年代后期:增加了乘除运算、浮点运算 、十进制运算、字符串处理等指令,指 令数目多达一二百条,寻址方式也趋多 样化。 60年代后期开始出现l系列计算机是指节本指令系统相同、基本体系结构相同的一系列计算机。其必要条件是同一系列的各机种有共同的指令集而且新推出的机种指令系统一定包含所有旧机种的全部指令,即实现一个“向上兼容”。因此旧机种上运行的各种软件可以不加任何修改便可在新机种上运行,大大减少了软件开发费用。系列机解决了各机种的软件兼容问题 l复杂指令系统计算机(CISC)计

3、算机的指令系统多达几百条。但是如此庞大的指令系统难以保证正确性,不易调试维护,造成硬件资源浪费。为此人们又提出了便于VLSI技术实现的l精简指令系统计算机(RISC)RISC是一种计算机系统结构的设计思想,至今还没有一个确切的定义,也难以再CISC和RISC之间划出一条明显的界限412 对指令系统性能的要求 指令系统的性能决定了计算机的基本功能,它的设计直接关系到计算机的硬件结构和用户的需要。一个完善的指令系统应满足如下四方面的要求: 完备性指用汇编语言编写各种程序时,指令系统直接提供的指令足够使用,而不必用软件来实现。完备性要求指令系统丰富、功能齐全、使用方便。l 有效性是指利用该指令系统所

4、编写的程序能够高效率地运行。高效率主要表现在程序占据存储空间小、执行速度快。l 规整性包括指令系统的对称性、匀齐性、指令格式和数据格式的一致性。对称性是指:在指令系统中所有的寄存器和存储器单元都可同等对待,所有的指令都可使用各种寻址方式;匀齐性是指:一种操作性质的指令可以支持各种数据类型;指令格式和数据格式的一致性是指:指令长度和数据长度有一定的关系,以方便处理和存取。 l 兼容性:至少要能做到“向上兼容”,即低档机上运行的软件可以在高档机上运行。 413 低级语言与硬件结构的关系计算机语言有高级语言和低级语言之分。l高级语言语句和用法与具体机器的指令系统无关。l低级语言分机器语言(二进制语言

5、)和汇编语言(符号语言),这两种语言都是面向机器的语言,它们和具体机器的指令系统密切相关。机器语言用指令代码编写程序,而符号语言用指令助记符来编写程序。l高级语言和低级语言的异同可参考表4.1。n计算机能够直接识别和执行的唯一语言是二进制语言 ,但人们采用符号语言或高级语言编写程序。为此, 必须借助汇编程序或编译程序,把符号语言或高级语 言翻译成二进制码组成的机器语言。 n 汇编语言依赖于计算机的硬件结构和指令系统。 不同的机器有不同的指令,所以用汇编语言编写的程 序不能在其他类型的机器上运行。 n 高级语言与计算机的硬件结构及指令系统无关, 在编写程序方面比汇编语言优越。但是高级语言程序“看

6、不见”机器的硬件结构,不能用于编写直接访问机器 硬件资源的系统软件或设备控制软件。为此,一些高 级语言提供了与汇编语言之间的调用接口。用汇编语 言编写的程序,可作为高级语言的一个外部过程或函 数,利用堆栈来传递参数或参数的地址。l指令字表示一条指令的机器字,就称为指令宇,通常 简称指令。 l指令格式,则是指令字用二进制代码表示的结构形式 。操作码字段表征指令的操作特性与功能;地址码字段 通常指定参与操作的操作数的地址。一条指令的结构可用如下形式来表示:l 421 操作码 指令系统的每一条指令都有一个操作码,它表示该指 令应进行什么性质的操作。不同的指令用操作码字段的不同编码来表示,每一种 编码

7、代表一种指令。l组成操作码字段的位数一般取决于计算机指令系统的 规模。 42 指令格式 操作码字 段地址码字 段422 地址码 地址码通常指定参与操作的操作数的地址。根据一条指令中有几个操作数 地址,可将该指令称为几操作数指令或几地址指令。目前二地址和一地址 指令格式用的得最多。l 零地址指令的指令字中只有操作码,而没有地址码。l一地址指令常称单操作数指令。(AC) OP (A) AC l二地址指令常称双操作数指令,它有两个地址码字段A1和A2,分别指明参 与操作的两个数在内存中或运算器通用寄存器的地址,其中地址A1兼做存 放操作结果的地址。(A1) OP (A2) A1 l三地址指令字中有三

8、个操作数地址A1,A2和A3。(A1) OP (A2) A3 从操作数的物理位置来说,又可归结为三种类型: l访问内存的指令格式,我们称这类指令为存储器存储器(SS)型指令; l访问寄存器的指令格式,我们称这类指令为寄存器寄存器(RR)型指令 ; l第三种类型为寄存器存储器(RS)型指令。 423 指令字长度 一个指令字中包含二进制代码的位数,称为指令字长度。 机器字长是指计算机能直接处理的二进制数据的位数,它决定 了计算机的运算精度。 指令字长度等于机器字长度的指令,称为单字长指令;指令字长度等于半个机器字长度的指令,称为半字长指令 ;指令字长度等于两个机器字长度的指令,称为双字长指令 。

9、使用多字长指令的目的,在于提供足够的地址位来解决 访问内存任何单元的寻址问题,但是主要缺点是必须两次或 多次访问内存以取出整条指令,这就降低了CPU的运算速度, 同时又占用了更多的存储空间。 在一个指令系统中,如果各种指令字长度是相等的,称 为等长指令字结构,这种指令字结构简单,且指令字长度是 不变的。如果各种指令字长度随指令功能而异,就称为变长指令 字结构。这种指令字结构灵活,能充分利用指令长度,但指 令的控制较复杂。 424 指令助记符 由于硬件只能识别1和0,所以采用二进制操作码是必要的,但是我们用二进制来书写程序却非常麻烦。为便于书写和记忆而设定的,与机器指令一一对应。每条指令通常用3

10、个或4个英文缩写字母来表示。这种缩写码叫做指令助记符。指令助记符由汇编程序转换成它们相对应的二进制操作码。不同的计算机中,指令助记符的规定是不一样的。当指令的操作码用助记符表示,而地址及其寻址特征也用符号表示时,就成为汇编语言,这些符号称为汇编符号,用汇编符号表示的指令格式,就称为汇编格式。425 指令格式举例 l八位微型计算机的指令格式8位微型机字长只有8位,指令结构是一种可变字长形式,包含单字长、双字长、三字长指令等多种。操作码 单字长指令操作码 操作数地址 双字长指令操作码 操作数地址 操作数地址2 三字长指令内存按字节编址,所以单字长指令每执行一条指令后,指令地址加。双字长指令或三字长

11、指令每执行一条指令时,指令地址要加2或加3,可见多字长的指令格式不利于提高机器速度。2. PDP/11系列机指令格式PDP/11系列机指令字长16位,其指令格式如下表所示。4.3 PDP/11系列机指令格式从表中看出,在PDP/11中,操作码字段是不固定的,其长度也是不相 同的。这样做可以扩展操作码以包含较多的指令。但是操作码字段不 固定,对控制器的设计来说必将复杂化。3. pentium指令格式pentium机的指令字长度是可变的:从字节到12字节, 还可以带前缀,指令格式如下所示。 0或1 0或1 0或1 0或1(字节数) 指令前缀 段取代 操作数长度取代 地址长度取代 1或2 0或1 0

12、或1 0,1,2,4 0,1,2,4(字节数 ) 操作码 Mod Reg R/M 比例S 变址I 基址B 位移量 立即数或操作码 2位 3位 3位 2位 3位 3位 这种非固定长度的指令格式是典型的CICS结构特征。一是为了与它的前身80486保 持兼容,二是希望能给编译程序写作者以更多灵活的编程支持。 操作数长度取代前缀和地址长度取代前缀 在实地址模式下,操作数和地址的默 认长度是16位;在保护模式下,若D1,操作数和地址的默认长度是32位,若D 0,二者的默认长度是16位。指令本身由操作码字段、Mod-R/M字段、SIB字段、位移量字段、立即数字段组 成。除操作码字段外,其他四个字段都是可

13、选字段。例1 指令格式如下所示,其中OP为操作码,试分析指令格式的特点。 15 9 7 4 3 0OP - 源寄存器 目标寄存器 解:(1)单字长二地址指令。 (2)操作码字段OP可以指定128条指令。 (3)源寄存器和目标寄存器都是通用寄存器(可分别指定16个),所以是RR 型指令,两个操作数均在寄存器中。(4)这种指令结构常用于算术逻辑运算类指令。 例2 指令格式如下所示,OP为操作码字段,试分析指令格式特点。15 10 7 4 3 0 OP - 源寄存器 变址寄存器 位移量(16位) 解: (1)双字长二地址指令,用于访问存储器。 (2)操作码字段OP为6位,可以指定64种操作。 (3)一个操作数在源寄存器(共16个),另一个操作数在存储器中(由变址寄存 器和位移量决定)所以是RS型指令。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

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