当前位置:文档之家› 白中英计算机组成原理第4章_指令系统(选用)

白中英计算机组成原理第4章_指令系统(选用)


操作码长度为32位
操作码的可扩展位为32-20=12位。
2014年10月26日星期日 24
【例】某机指令字长32位,一个操作数地址为12位,有 双地址码、单地址码、零地址码3种格式的指令。 若采用扩展操作码的方式来设计指令,已知双地址码指 令K条,单地址码指令L条,问零地址码指令有多少条?
由以上分析的指令格式,及题目可知: 双地址码指令最多有28条; 可用于扩展单地址码指令的编码有(28-K)个; 单地址码指令最多有(28-K)×212条:
指令长度和数据长度有一定的关系,以方便处理和 存取;
2014年10月26日星期日 12
4.1.3 低级语言与硬件结构的关系
低级语言: 机器语言、汇编语言
面向机器的语言,和具体机器的指令系统密切相关。
高级语言与低级语言的比较如P105 表4.1
2014年10月26日星期日
13
4.2 指令格式
(二)指令的寻址方式
1. 有效地址的概念 2. 数据寻址和指令寻址 3. 常见寻址方式 (三) CISC和RISC的基本概念
2014年10月26日星期日 3
4.1 指令系统的发展和性能要求
4.1.1 指令系统的发展
4.1.2 对指令系统性能的要求
4.1.3 低级语言与硬件结构的关系
2014年10月26日星期日
2014年10月26日星期日
4.2.2 地址码(2/2)
两地址指令
OP A1 A2
功能: (A1) OP (A2) A1 三地址指令
OP A1 A2
如ADD、XOR等指令
A3
功能: (A1) OP (A2) A3 多地址指令(如四地址) 这类指令功能强,一般用高档小型机或中大型机,用于实 现成批数据处理,字符串处理、向量或矩阵运算指令等。
双地址码指令 单地址码指令
OP(8位) A1(12位) A2(12位)
操作码长度为(32-12×2)=8位;
OP(8位) 扩展操作码(12位) A2(12位)
操作码长度为(32-12)=20位;
操作码的可扩展位为20-8=12位。
零地址码指令
OP(8位) 扩展操作码(12位) 扩展操作码(12位)
4.2.1 操作码 4.2.2 地址码 4.2.3 指令字长度 4.2.4 指令助记符 4.2.5 指令格式举例
2014年10月26日星期日
14
指令的一般格式
指令字(简称指令) 表示一条指令的机器字。 指令格式
指令字用二进制代码表示的结构形式,由操作码字段和地 址码字段组成。
操作码字段OP 地址码字段A
操作码字段:表征指令的操作特性与功能;
地址码字段:通常指定参与操作的操作数的地址。
2014年10月26日星期日
15
4.2.1
操作码
操作码字段的位数取决于指令系统的规模; 操作码的类型: 固定长度的操作码
特征:所有指令长度均相同。
操作码字段为4位, 则指令系统中的指令 数目为24=16条。
第4章 指令系统
目录
4.1 指令系统的发展与性能要求
4.2 指令格式 4.3 操作数类型 4.4 指令和数据的寻址方式 4.5 典型指令 4.6 本章练习题
2014年10月26日星期日 2
考研计算机统考大纲要求
(一) 指令格式
1. 指令的基本格式
2. 定长操作码指令格式 3. 扩展操作码指令格式
2014年10月26日星期日 20
操作码扩展举例(1/3)
设某指令长16位,包括4位基本操作码字段和3个4位地址码 字段。
OP A1 A2 A3
① 若全是三地址指令,则最多能有多少条指令? 操作码为4位的,则指令条数为24=16。 ② 若三地址指令需15条 ─┐ 两地址指令需15条 │ 应如何安排?
2014年10月26日星期日 9
判断以下有关CISC和RISC的描述的正误
A. 采用RISC技术后,计算机的体系结构又回复到早期比 × 较简单的情况; B. 为了实现兼容,新设计的RISC,是从原来CISC系统 的指令系统中挑选一部分实现的; √ C. RISC的主要目的是减少指令;
×
D. RISC设有乘、除法指令和浮点运算指令;×
指令字长由操作码长度、操作数长度和个数共同决定。
指令有半字长、单字长、双字长、多字长等不同的长度类型; 指令系统可分为等长指令字结构、变长指令字结构两种。
2014年10月26日星期日 26
4.2.4 指令助记符
指令助记符 使用3~4个英文缩写字母来表示的指令操作码。 在不同的计算机中,指令助记符的规定是不一样的; 指令助记符只是指令操作码字段的一种表示方法; 机器内部保存的还是二进制代码形式的机器指令;
单地址指令需15条

零地址指令需16条 ─┘ 可使用操作码扩展技术,缩短固定操作码长度;
2014年10月26日星期日 21
操作码扩展举例(2/3)
4 位操作码 0000 A1
...... 1110 A2 A3
15条三地址指令
A1
A2
A3
如果采用操作码扩展方法能否设计一
1111 0000 A1 A2 8 位操作码 ...... 15条二地址指令 个具有三地址指令15条,双地址指令 1111 1110 A1 A2
2014年10月26日星期日
8
RISC
RISC(Reduced instruction set computer)
从简化指令系统和优化硬件设计的角度来提高系统的性能 与速度。
RISC指令系统的主要特点:
1. 选取使用频率高的简单指令; 2. 指令长度固定,指令格式少,寻址方式种类少; 3. 采用流水线技术; 4. 使用较多的通用寄存器,减少访存; 5. 控制器以组合逻辑控制为主; 6. 采用优化编译技术;
2014年10月26日星期日 5
计算机指令系统的发展过程
50年代
只有定点加减、逻辑运算、数据传送、转移等十几至几十 条指令。 60年代后期 增加了乘除运算、浮点运算、十进制运算、字符串处理等 指令,指令数目多达一二百条,寻址方式也趋多样化。 出现了系列计算机。
70年代末期
复杂指令系统计算机(CISC)、精简指令系统计算机(RISC)
零地址指令
OP
① 无任何操作数运算,如NOP、HALT等指令。 ② 单操作数运算:隐含一个操作数,如Acc 。
OP (Acc) Acc 如CBW指令
一地址指令 ① 单操作数运算:
OP
A1
OP (A1)
A1
如INC指令 如MUL指令
17
② 双操作数运算:隐含一个操作数,如Acc
(Acc) OP (A1) Acc/A1
8 位操作码
A1 0000 1111 0000
0000
A2 A1
32条一地址指令
12 位操作码
A1 0000
16条零地址指令 1111
23
16 位操作码
2014年10月26日星期日
此指令系统共具有75条指令
【例】某机指令字长32位,一个操作数地址为12位,有 双地址码、单地址码、零地址码3种格式的指令。 若采用扩展操作码的方式来设计指令,已知双地址码指 令K条,单地址码指令L条,问零地址码指令有多少条?
12 位操作码
12条,单地址指令 条以及零地址指 1111 1111 0000 31 A1
...... 令16 条的指令系统? 1111 1111 1110 A1 0000
15条一地址指令
1111 1111 1111 16 位操作码 ...... 1111 1111 1111
2014年10月26日星期日
可用于扩展零地址码指令的编码有[ (28-K)×212-L]个;
因此,零地址码指令最多有 [(28-K)×212 -L] ×212条。
2014年10月26日星期日
25
4.2.3
机器字长
指令字长度
运算器一次能处理的二进制数的位数。
机器指令的长度直接决定着CPU运算的精度和直接寻址能 力的大小; 指令字长 一个指令字中包含二进制代码的位数;
4
4.1.1 指令系统的发展
程序——用于解决实际问题的一系列的指令; 指令——使计算机执行某种操作的命令; 从组成的层次结构来说,计算机的指令可分为如下3类:
微指令:微程序级的命令,它属于硬件;
机器指令(指令):可完成一个独立的算术或逻辑运算; 宏指令:由若干条机器指令组成的软件指令,它属于软件; 指令系统:一台计算机中所有机器指令的集合。 直接影响机器的硬件结构、软件系统、以及机器的适用范围。
16条零地址指令
1111
此指令系统共具有61条指令
22
操作码扩展举例(3/3)
4 位操作码
0000 A1 ...... 1110 A1 1111 0000 ...... 1111 1011 1111 1100 ...... 1111 1101 1111 1110 ...... 1111 1110 A2 A2 A1 A3 15条三地址指令 A3 A2 12条二地址指令
2014年10月26日星期日
7
CISC
CISC(complex instruction set computer)
采用复杂的的指令系统,来达到增强计算机的功能、提 高机器速度的目的。
特点: 1. 指令系统复杂庞大,指令数目多; 2. 指令格式多,字长不固定,多种寻址方式; 3. 可访存指令不受限制; 4. 各种指令的执行时间相差很大; 5. 大都采用微程序控制器;
这类指令的执行不需要访存,因此速度很快。
寄存器-存储器(RS)型指令
A1、A2中一个为寄存器,一个为存储单元; 执行此类指令时,既要访问内存单元,又要访问寄存器。
相关主题