第5章 指令系统的设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
指令系统的设计有一个清晰的认识。
学时:4学时。
5.1指令系统的作用和性能要求
指令系统的作用
计算机的程序是由一系列的指令组成的,指令就是要计
算机执行某种操作的命令 ,是计算机操作运行、程序人
员使用计算机的最小功能单位。一台计算机所提供的全 部指令构成该计算机的指令系统。指令系统设计、安排
好坏,对计算机硬件的复杂程度、运行性能有直接影响,
十二位操作码,15条三地址指令 1111 1111 …… 1111 1111 1111 1111 1111 1111 1111 0000 0001 1111
八位操作码,15条二地址指令
十六位操作码,16条零地址指令
除了上述扩展方式外,还有其他多种扩展方式.如15条三地址指 令,14条两地址指令,31条一地址指令和6条零地址指令.在可变 长度的指令系统设计中,到底使用哪种扩展方法,衡量原则是使 用频度。还要考虑规整性,指令长度是字节的整数倍。 指令 I1 I2 I3 概率Pi(%) 45 28 17 操作码 00 01 10 操作码长度(位) 2 2 2
(2)地址码的长度决定了指令的直接寻址能力,n2n 扩大寻址能力的方法 (1)增加地址码的长度 (2)地址扩展 ① 存储空间分段 ② 基址 + 位移量
一些概念
5.3 机器指令的格式
机器字长:计算机能直接处理的二进制数据的位数 。 指令字长:一个指令字中包含二进制代码的位数: 单字长指令:指令字长等于机器字长的指令; 半字长指令:指令字长等于半个机器字长的指令; 双字长指令:指令字长等于两个机器字长的指令 。 在一个指令系统中,如果各种指令字长度是相等的,称为等长 指令字结构,它们可以都是单字长指令或半字长指令。这种指 令字结构简单,且指令字长是不变的。 如果各种指令字长随指令功能而异,比如有的指令时单字长指 令,有的指令时双字长指令,就称为变长指令字结构。这种指 令字结构灵活,能充分利用指令长度,但指令的控制较复杂。
5.1指令系统的作用和性能要求
指令集应考虑的因素
(1)操作指令表:应提供多少和什么样的操作,
操作的复杂程度;
(2)数据类型:所支持的数据类型; (3)指令格式:指令的(位)长度、地址数目、 各个字段的大小等; (4)寄存器:能被指令访问的CPU寄存器数目
以及它们的用途;
(5)寻址方式:指定操作数地址的产生方式。
性能要求
5.1指令系统的作用和性能要求
1、完备性:指指令系统直接提供的指令足够使用,而不必用 软件来实现,编程方便。 2、有效性:是指利用该指令系统所编写的程序能够高效地运 行。程序占据存储空间小、执行速度快。 3、规整性: 对称性:所有的指令都可使用各种寻址方式; 匀齐性:指令可以支持各种数据类型; 指令格式和数据格式的一致性:指令长度和数据长度有 一定的关系,以方便处理和存取。 4、兼容性:即低档机上运行的软件可以在高档机上运行。 都满足有难度,但可以指导我们设计出更高质量的指令系统。
操作码的扩展技术
OP 0000 0001 …… 1110 A1 A1 A1 A1 A2 A2 A2 A2 A3 A3 A3 A3 1111 1111 …… 1111 1111 1111 1111 0000 0001 1110 A1 A1 A1
四位操作码,15条三地址指令 1111 1111 …… 1111 0000 0001 1110 A1 A1 A1 A2 A2 A2
第五章 指令系统的设计
1 2 3 指令系统的作用和性能要求 机器指令的设计要素
指令的基本格式
操作类型和操作数类型 指令寻址方式和操作数寻址方式 CISC和RISC的指令系统
4
5
6
掌握:指令格式、数据的表示、指令和数据的寻址
方式、指令的种类等。 理解:设置各类指令应考虑的因素。 了解:指令系统的发展、RISC指令系统的特点,对
算机以及 RISC 中。如IBM370和VAX-11系列机,操 Intel80X86 等。 作码长度均为8位。
指令的字长
5.3 机器指令的格式
指令长度 = opcode长度 + ∑(操作数地址码长度)
字长
CPU一次能处理的二进制位数,与机器的功能和用途有关 字长的重要性
(1)决定了计算机的精度,字长大 精度高
指令格式
操作码字段(OP) 固定字长(RISC) 扩展字长(PDP-11)
5.3 机器指令的格式
地址码字段(A) 无地址 一地址 二地址 多地址
交叉安排(NOVA)
操作码长度固定:便于硬件设计,指令译码时间短, 操作码长度不固定:可有效地压缩操作码的平均长度, 广泛应用于字长较长的、大中型计算机和超级小型计 在字长较短的微机中被广泛采用。如PDP-11,
对汇编程序的方便程度和运行效率密切相关。 从计算机组成的层次结构来说,计算机的指令有微指令、 机器指令和宏指令之分。
5.1指令系统的作用和性能要求
计算机的指令
微指令:微程序级的命令,它属于硬件; 宏指令:由若干条机器指令组成的软 件指令,它属于软件 ; 机器指令(指令):介于微指令与宏指令之间,每 条指令可完成一个独立的算术运算或逻辑运算;
地址结构
指令中提供地址的方式
来自百度文库
5.3 机器指令的格式
显示地址方式:指令中明显指明地址(直接或间接给 出) 隐式地址方式:地址隐含约定,不出现在指令中。使 用该方式可以减少指令中的地址数,简化地址结构
I4 I5 I6 I7
5 3 1 1
1100 1101 1110 1111
4 4 4 4
例题
一台模型机共有7条指令,主频25MHz,各指令的使用频率与CPI如 下。该模型机有8位和16位两种指令字长,采用2-4扩展操作码。8位 字长指令为寄存器(R-R)二地址类型,16位字长指令为寄存器- 存储器(R-M)二地址变址寻址类型(-128<=变址范围<=127)。 指令(字长) 使用频度f CPI I1(8位) 35% 1 I2(8位) 25% 2 I3(8位) 20% 2 I4(16位) 10% 2 I5(16位) 5% 1 I6(16位) 3% 2 I7(16位) 2% 2 (1) 计算该机的MIPS速率。(2) 计算操作码的平均码长。(3) 该机允许使用多少个可编址的通用寄存器,多少变址寄存器?(4) 设计该机的两种指令格式,标出各字段位数并给出操作编码。