计算机原理 第四章指令系统

上传人:kms****20 文档编号:56773702 上传时间:2018-10-15 格式:PPT 页数:26 大小:595KB
返回 下载 相关 举报
计算机原理 第四章指令系统_第1页
第1页 / 共26页
计算机原理 第四章指令系统_第2页
第2页 / 共26页
计算机原理 第四章指令系统_第3页
第3页 / 共26页
计算机原理 第四章指令系统_第4页
第4页 / 共26页
计算机原理 第四章指令系统_第5页
第5页 / 共26页
点击查看更多>>
资源描述

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

1、第四章 指令系统 (148),4.1 指令格式,4.2 寻址方式,4.3 指令类型,4.4 CISC和RISC, 4.5 实验模型机的指令系统汇总表,4.1 指令格式,计算机指令是计算机硬件能够识别并直接执行的操作命令,又称为机器指令。,一条指令应包括两方面的信息:操作码信息和地址码信息。,它是按照一定格式编制的二进制代码,所以机器指令由二进制代码来表示。,操作码OP指明该指令完成何种操作;地址码AD指明操作数的地址信息。,一、指令格式,历史上地址码AD部分出现过四地址指令、三地址指令、二地址指令和一地址指令系统,目前一般采用的是二地址指令系统。,(A1) OP (A2) A2,二、指令字长,

2、指令字长操作码长度地址码长度(源操作数地址长度与目的操 作数地址长度),指令字长通常设计成字节(八位二进制)的整数倍。,指令字长长,优点是所能表示的操作码信息和地址码信息越丰富,可使指令功能丰富。缺点是占存储空间就大,读取指令时间就增加。,指令长度一般不固定,从一字节到十几个字节不等,多数指令为短指令,少数复杂指令为长指令。固定长度的指令现在很少采用。,例1: DEC公司的PDP 11是16位小型机中的重要代表。它的基本指令字长16位,占主存两个字节,但有些指令之后紧跟一个16位的地址或立即数,或是紧跟两个16位地址或立即数,指令长度变为32位或48位。其格式如下:,三、操作码格式,操作码指定

3、机器执行什么样的操作(如:加法,传送等),操作码位数越多,所能表示的操作种类也就越多。 常见的操作码格式有以下两种编码方式。,1. 定长操作码,地址码变长,操作码的长度固定,占指令最前面几位,称操作码字段。 后面有可能跟一个地址信息,或二个地址信息。,例如 “ADD”, 加法指令,后面需要两个地址提供“加数”与“被加数” ; “INC”, 加1指令, 只需一个地址信息,指令就短。,优点: 这种方式的操作码字段规整,有利于简化操作码译码器的设计,广泛用于指令字长较长的大、中型及超级小型机中。例如当年的IBM370大型机指令系统,操作码固定在指令最高8位,早前的Intel 8086也是高8位为操作

4、码。,变长操作码,定长指令码。,操作码长度不固定,但指令码的长度固定。这种设计当操作码变长时,地址码就缩短(地址个数变少),但指令字总长不变。,例 设某机器的指令长度为16位,包括基本操作码4位和三个地址字段,每个地址字段长4位,其格式为:,0000 A1 A2 A3 1110 A1 A2 A3,1111 0000 A1 A2 1111 1110 A1 A2,1111 1111 0000 A11111 1111 1110 A1,1111 1111 1111 00001111 1111 1111 1111,16位指令字,三地址指令范围,二地址指令范围,一地址指令范围,零地址指令范围,15条,15

5、条,15条,16条,总指令条数:15+15+15+16=61,指 令 扩 展 举 例 1,0000 A1 A2 A3 1101 A1 A2 A3,1110 0000 A1 A2 1110 1111 A1 A21111 0000 A1 A21111 1110 A1 A2,1111 1111 0000 A11111 1111 1110 A1,1111 1111 1111 00001111 1111 1111 1111,16 位指令字,三地址指令范围,二地址指令范围,一地址指令范围,零地址指令范围,14条,31条,15条,16条,76,指令扩展举例 2,操作码扩展技术是一种重要的指令优化技术,它可以

6、缩短指令的平均长度,并且增加指令字表示的操作信息。这种方式多用于微、小型机上。,四、指令助记符,用一些比较容易记忆的文字符号来表示指令中各种信息,即操作码和操作数地址,这些符号称为助记符。,例: ADD表示加法,SUB表示减法;MOV表示数据传送等,地址码中常用R表示寄存器,A表示存储单元。,如:ADD R1,A , (R1)+(A) A,计算机中所有指令的助记符的集合以及使用规则构成了汇编语言。用汇编语言编写的程序可以比较简单地转换成机器指令代码,这种转换由汇编程序完成。汇编语言是面向计算机硬件的语言,通过它可以了解计算机的硬件结构。,4.2 寻址方式,如何寻找指令中的数据称为寻址方式。大多

7、数可以归结为以下几种寻址方式:立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、间接寻址、变址寻址和基址寻址等。,1. 立即寻址方式,操作数直接在指令中给出,在取出指令的同时也取出了操作数,所以称为立即寻址。只适用于提供常数,设定初始值。,例如: MOV R1 , #08, 08 表示立即数ADD R1, #03,2. 直接寻址方式,操作数的地址直接在指令中给出,根据该地址去访问主存。 优点:这种寻址方式简单,不需作任何寻址计算。 缺点:由于直接地址值是指令的一部分,不能修改,因此只能用于 访问固定主存单元,而且导致指令字变长。,地址 数据1000H 1A00H2000H 1B00H3000H

8、1C00H,例如: ADD 2000,R2 (2000)+(R2) R2,3. 寄存器寻址方式,操作数在指定的寄存器中,寄存器号在指令中给出。,例如: ADD 2000,R2 (2000)+(R2) R2,和直接寻址方式比有两个优点: )读取操作数的速度要比访问主存快得多; )占指令字的位数较少,从而有效地缩短了指令长度。,4. 寄存器间接寻址方式,指令给出寄存器号,寄存器中存放着操作数的地址。,例: ADD (R1),(R2),2C00H 3B00H 3000H单元,5. 间接寻址方式,指令中给出的既不是操作数,也不是操作数的地址,而是操作数地址的地址。我们把这个中间地址称为间址单元。,例

9、ADD (2000),R2,这种方式可以用同一条指令在不同时间访问不同存储单元,提供了编程的灵活性;但存储器间址方式增加了访存次数,因而减慢了工作速度。,6. 相对寻址方式,操作数的地址是程序计数器PC的值加上一个偏移量,这个偏移量在指令地址码中给出。因为访问的数据位置相对于指令的位置,因此称为相对寻址方式。,例:ADD 100(PC),R1 源操作数在PC+100的内存单元中。,7. 变址寻址方式,操作数的地址是变址寄存器内容与形式地址(地址数值)相加,变址寄存器由指令给出,形式地址也由指令给出。,例:ADD R2,1000(R0) ,1000(R0)就是变址寻址方式,R0寄 存器充当变址寄

10、存器,操作数地址等于1000加上R0的内容。,8. 基址寻址方式,操作数的地址是基址寄存器内容与形式地址(地址数值)相加得到内存地址。基址寄存器由指令给出,形式地址也由指令给出。,CPU中设有专门的基址寄存器。使用目的:变址寻址方式用于数组元素操作,面向用户;基址寻址方式用于程序重定位和扩大寻址空间等问题,它面向系统。,例:某主存部分单元的地址码与存储器内容对应关系如下地址码 存储内容3000H 5678H3001H ABCDH3002H 3003H3003H 3001H3004H 9876H1、若采用寄存器间址方式读取操作数,指定寄存器R1的内容为3004H,则操 作数是多少? 2、若采用存

11、储器间接寻址读取操作数,指令中给出的地址是3003H,则操 作数是多少? 3、若采用变址寻址方式X(R2)读取操作数,指令中给出形式地址为2H,变址寄存器R2内容为3000H,则操作数是多少?,4.3 指令类型,一台计算机指令系统从二三十条指令到几百条指令不等,指令少计算机的功能、速度等指标就弱,指令多则代表CPU的硬件投入大,相应的指标就高。无论指令系统的规模如何,都应具备基本指令类型功能,常见指令类型包括:,数据传送指令。将数据在主存与CPU寄存器之间进行传输,即数据从一个地方传送到另一个地方。汇编助记符有MOV或LD两套常用符号。例MOV R1,R2, (R1) R2 LD R1,(R2

12、) (R1) (R2) 。,2. 算术运算指令。对数据进行算术操作,包括加法ADD、减法SUB、乘法MULT、除法 DIV、求反NOT、求补COM、算术移位SHA等。,3. 逻辑运算指令。对数据进行逻辑操作,包括按位与AND、按位或OR、逻辑移位SHL和数据转换等。,4. 程序控制指令。用以控制程序执行的顺序和方向。主要包括转移指令、循环控制指令、子程序调用指令、返回指令、程序中断指令等。,5. 输入输出指令。用于启动外设、检查测试外设的工作状态、读写外设的数据。有些计算机用专门的输入输出操作指令,如Intel X86指令中IN、OUT指令。,6. 其它类指令。包括堆栈操作指令,字符串处理指令

13、,系统指令和特权指令。这些指令请读者具体深入到某计算机汇编指令时再学习与研究。,4.4 CISC和RISC,CISC: Complex Instruction System Computer复杂指令系统计算机,RISC: Reduced Instruction System Computer精简指令系统计算机,一、CISC,CISC结构是传统的计算机指令系统,最少百条以上,多则几百条指令。,指令越丰富,计算机功能越强,但相应地指令格式越来越复杂,指令越变越长 ,执行时间也越来越长。,二、RISC,人们对程序在机器上的运行情况作大量分析后,惊奇地发现,机器所执行的指令竟然有80%以上是简单指令,

14、复杂指令只占很小比例。根据实际情况人们提出用一套精简的指令系统取代复杂指令系统,使机器结构简化,提高机器的性能价格比。于是70年代开始了RISC技术的研究。,RISC的主要技术内容: 1. 简化的指令系统。表现在指令条数较少,基本寻址方式少,指令格式少,指令字长度一致。指令总数大都不超过100条,寻址方式一般限制在23种,指令格式一般限制在23种, 长度为32位。,2. 以寄存器间的数据处理为主。只有LOAD取数和STORE存数两条指令访问内存。,3. CPU中采用大量的通用寄存器。一般不少于32个,多则几百。,RISC和CISC两种技术正在不断融合,相互撷取优点补充自己,因此两种技术不能说谁

15、好谁坏,采用两种技术的计算机都存在。Pentium指令系统属于CISC结构,但采用了许多RISC思想。,5. 采用优化编译程序。用优化编译技术,力求能高效地支持高级语言实现,生成优化的机器指令代码。,4. 指令采用流水线工作方式 。采用流水线技术可使每一时刻都有多条指令重叠执行。尽管一条指令的执行仍需要几个周期时间,但从平均效应来看,每条指令的周期数大大减少,每条指令只需一个周期。只有LOAD和STORE两条指令不采用流水线方式。,第四章 作业,一、实验书 P2728表2-3指令系统汇总表,求下列指令的功能和指令编码。MOV R1,R2 ADD R3,R1 LDI 08,R0 SUB R1,R2 RAR R2,

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

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

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