计算机组成原理第四章 指令系统[二]

合集下载

计算机组成原理第4章指令系统课件

计算机组成原理第4章指令系统课件

4.2 指令的格式
4.2.1 指令的编码格式
操作码OC
AC1
AC2
(1)把保存操作前原来操作数的地址称为源点地址(SS), 把保存指令执行结果的地址称为终点地址或目的地址(DD)。
(2)将源点与终点操作数进行操作码规定的操作后,将 结果存入终点地址。通常二地址指令又称为双操作数指令。
ADD R0,R1表示将R0寄存器的内容和R1寄存器的内容相加以
5 异或XOR
XOR指令对两个操作数进 行按位异或运算。
4.4 指令的种类
4.4.4 移位、循环类指令
CF
位移指令SAL/SHL操作示意图
CF
SAR操作示意图
CF 0
SHR操作示意图
4.4 指令的种类
4.4.4 移位、循环类指令
不带进位标志的循环左移指令ROL MSB 操作数 LSB
CF
不带进位标志的循环右移指令ROR MSB 操作数 LSB
例如:在IBM-PC指令系统中
MOV
AX,05FFH
4.3 寻址方式
4.3.2 常用的寻址方式
2.直接寻址方式
(1)含义: 是指地址字段直接指明操作数在存储器内的位置的寻址 方法。即形式地址等于有效地址。 (2)优缺点: A、优点:简单,不需要进行加法运算。 B、缺点:地址空间指令地址字段长度的限制。
4.2 指令的格式
4.2.3 指令助记符
通常采用一些符号来代表二进制数据,这些符号即指 令助记符。
指令助记符 ADD SUB MUL DIV
助记符示例
含义
指令助记符
相加
AND
相减
OR
相乘
LOAD
相除
STORE

《计算机组成原理》教程第4章指令系统

《计算机组成原理》教程第4章指令系统

4
二 指令的格式
即指令字用二进制代码表示的结构形式
包括 操作码:操作的性质 操作码 地址码:操作数(operand)的存储位置,即参加操作的 operand , 地址码 数据的地址和结果数的地址
操作码域(op) 地址码域(addr)
5
1.操作码 操作码
指令的操作码表示该指令应进行什么性质的操作。 组成操作码字段的位数一般取决于计算机指令系统的 规模。 固定长度操作码:便于译码,扩展性差 . 可变长度操作码:能缩短指令平均长度 操作码的的位数决定了所能表示的操作数,n位操 作码最多表示2n种操作
(2). 堆栈工作过程 .
(一)进栈操作 ① 建立堆栈,由指令把栈顶地址送入SP,指针 指向栈顶。 ② 进栈:(A)→Msp, (sp)-1→SP ;Msp:存储 器的栈顶单元 (二)出栈操作 (SP)+1→SP, (Msp)→A
22
五.指令类型
一个较完善的指令系统应当包括: 数据传送类指令: 例)move、load、store等 算术运算类指令: 例)add、sub、mult、div、comp等 移位操作类指令: 例) shl,shr,srl,srr 逻辑运算类指令: 例)and、or、xor、not等 程序控制类指令: 例)jump、branch、jsr、ret、int等 输入输出指令: 例)in、out等 字符串类指令: 例)如alpha中cmpbge、inswh、extbl等 系统控制类指令: 例)push、pop、test等
18
10) *段寻址方式 段寻址方式 Intel 8086 CPU中采用了段寻址方式(基址寻址的特例)。 由16位段寄存器和16位偏移量产生20位物理地址 11)*自动变址寻址 自动变址寻址 指在变址方式中,每经过一次变址运算时,都自动改变变址寄存 器的内容,以后在PDP-11中详讲.

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

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

4. 寄存器间接寻址方式
指令给出寄存器号,寄存器中存放着操作数的地址。
优点:寄存器的位数 较长(一般为机器字 长),足以访问整个 内存空间,这样既有 效地压缩了指令长度, 又解决了寻址空间太 小的问题。
主存单元 例: ADD (R1),(R2) R0 1000H 1000H 3A00H
R1
2C00H+ 3B00H → 3000H单元 R2
计 算 机 组 成 原 理
指令扩展举例 1
16位指令字 三地址指令范围 xxxx
0000 1110 1111 1111 1111 1111 1111 1111
xxxx xxxx xxxx
A1 A1 0000 1110 1111 1111 1111 1111 A2 A2 A1 A1 0000 1110 1111 1111 A3 A3 A2 A2 A1 A1 0000 1111
2.变长操作码,定长指令码。
操作码长度不固定,但指令码的长度固定。这种设计当操作码变 长时,地址码就缩短(地址个数变少),但指令字总长不变。 〔例〕 设某机器的指令长度为16位,包括基本操作码4位和三个 地址字段,每个地址字段长4位,其格式为: 15 14 13 12 OP 11 10 9 8 AD1 7 6 5 4 AD2 3 2 AD3 1 0
第四章
§4.1 指令格式
指令系统
(P148)
§4.2
寻址方式
§4.3 指令类型 §4.4 § 4.5 CISC和RISC 实验模型机的指令系统汇总表
§4.1 指令格式
计算机指令是计算机硬件能够识别并直接执行的操作命令,又称为 机器指令。
一、指令格式
一条指令应包括两方面的信息:操作码信息和地址码信息。 操作码OP 地址码AD

第4章指令系统层习题参考解答-汇编语言与计算机组成原理 答案

第4章指令系统层习题参考解答-汇编语言与计算机组成原理 答案

1.什么是“程序可见”的寄存器?程序可见寄存器是指在用户程序中用到的寄存器,它们由指令来指定。

2. 80x86微处理器的基本结构寄存器组包括那些寄存器?各有何用途?基本结构寄存器组按用途分为通用寄存器、专用寄存器和段寄存器3类。

通用寄存器存放操作数或用作地址指针;专用寄存器有EIP和EFLAGS,分别存放将要执行的下一条指令的偏移地址和条件码标志、控制标志和系统标志;段寄存器存放段基址或段选择子。

3.80x86微处理器标志寄存器中各标志位有什么意义?常用的7位:CF进位标志: 在进行算术运算时,如最高位(对字操作是第15位,对字节操作是第7位)产生进位或借位时,则CF置1;否则置0。

在移位类指令中,CF用来存放移出的代码(0或1)。

PF奇偶标志: 为机器中传送信息时可能产生的代码出错情况提供检验条件。

当操作结果的最低位字节中1的个数为偶数时置1,否则置0。

AF辅助进位标志: 在进行算术运算时,如低字节中低4位(第3位向第4位)产生进位或借位时,则AF置1;否则AF置0。

ZF零标志:如指令执行结果各位全为0时,则ZF置1;否则ZF置0。

SF符号标志:其值等于运算结果的最高位。

如果把指令执行结果看作带符号数,就是结果为负,SF置1;结果为正,SF置0。

OF溢出标志: 将参加算术运算的数看作带符号数,如运算结果超出补码表示数的范围N,即溢出时,则OF置1;否则OF置0。

DF方向标志: 用于串处理指令中控制处理信息的方向。

当DF位为1时,每次操作后使变址寄存器SI和DI减小;当DF位为0时,则使SI和DI增大,使串处理从低地址向高地址方向处理。

4.画出示意图,简述实模式下存储器寻址的过程。

20位物理地址如下计算(CPU中自动完成):10H×段基址+偏移地址=物理地址5. 画出示意图,简述保护模式下(无分页机制)存储器寻址的过程。

采用对用户程序透明的机制由选择子从描述子表中选择相应的描述子,得到欲访问段的段基址、段限等有关信息,再根据偏移地址访问目标存储单元。

计算机组成原理-第4章_指令系统

计算机组成原理-第4章_指令系统

7. 段寻址方式(Segment Addressing)
方法:E由段寄存器的内容加上段内偏移地址而形成。
应用:微型机采用段寻址方式,20位物理地址为16位 段地址左移四位加上16位偏移量。
分类:① 段内直接寻址; ② 段内间接寻址; ③ 段间直接寻址; ④ 段间间接寻址;
9 堆栈寻址方式
堆栈:是一组能存入和取出数据的暂时存储单元。
*** 指令字长度
概念 指令字长度(一个指令字包含二进制代码的位数) 机器字长:计算机能直接处理的二进制数据的位数。 单字长指令 半字长指令 双字长指令
多字长指令的优缺点
优点提供足够的地址位来解决访问内存任何单元的寻址问题 ; 缺点必须两次或多次访问内存以取出一整条指令,降低了CPU的运 算速度,又占用了更多的存储空间。
*** 指令系统的发展与性能要求
*** 指令系统的发展
指令:即机器指令,要计算机执行某种操作的命令。
指令划分:微指令、机器指令和宏指令。
简单
复杂
指令系统:一台计算机中所有指令的集合;是表征
计算机性能的重要因素。
系列计算机:基本指令系统相同、基本体系结构相同 的一系列计算机。
*** 对指令系统性能的要求
(2)立即数只能作为源操作数,立即寻址主要用来给寄存 器或存储器赋初值。以A~F开头的数字出现在指令中时,前 面要加0。
(3)速度快(操作数直接在指令中,不需要运行总线周期)
(4)立即数作为指令操作码的一部分与操作码一起放在代 码段区域中。
(5)指令的长度(翻译成机器语言后)较长,灵活性较差。
【例】MOV AX, 10H 执行后(AX)=? 其中:这是一条字操作指令,源操作数为立即寻址 方式,立即数为0010H,存放在指令的下两个单元。

计算机组成原理-第4章 指令系统

计算机组成原理-第4章 指令系统

0000 0001
AA11
AA22
AA33




1110 A1 A2 A3
1111 0000 1111 0001
AA22
AA33




1111 1110 A1 1111
0000 0001
AA33




1111 1111 1110 A3
1111 1111 1111 0000 1111 1111 1111 0001
操作码字段
地址码字段
•操作码:表征指令的操作特性和功能。不同指令有不 同编码。
•地址码:指定参与操作的操作数的地址。
4.2 指令格式
一、操作码设计 1、分类 • 固定长度操作码:操作码的长度固定,且集中放在指令字 的一个字段中 – 便于译码,扩展性差 • 可变长度操作码:操作码的长度可变,且分散放在指令字 的不同字段中 – 能缩短指令平均长度;指令的译码复杂
2、操作码位数的确定 1)要点:组成操作码字段的位数取决于指令系统的指令条数。 2)举例 • 指令系统8条指令8=23 3位操作码 • 指令系统32条指令32=25 5位操作码 • 指令系统2n条指令n位操作码
3) 扩展(可变长度)操作码技术
•基本思路: • 让操作数地址个数多的指令操作码 字段短些,让操作数地址个数少的 指令操作码字段长些
– 等长指令字结构:在一个指令系统中,各种指令字长度是相等的。结 构简单,取指快、译码简单
– 变长 指令字结构: …………………,…………………….不相等 结 构灵活,可提高编码效率,控制复杂
4.1指令系统的基本概念
4、指令系统:一台机器中所有机器指令的集合。它对计算机性能的影响主要体 现在三个方面: – 机器的硬件结构 – 机器的系统软件 – 机器的适用范围

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

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

计算机组成原理(白中英)第4章指令系统指令系统概述寻址方式指令系统20XX年3月15日10时45分概述指令:是指示计算机某种操作的命令。

微指令,机器指令,宏指令指令系统:一台计算机中所有机器指令的集合。

它是机器硬件设计的依据,也是软件设计的基础。

它决定了一台计算机硬件的主要性能和基本功能。

是硬件和软件间的界面。

系列计算机:有共同的指令集,相同的基本体系结构。

CISC和*****X年3月15日10时45分2一个完善的指令系统应满足:1.完备性:指令丰富,功能齐全,使用方便。

1.完备性:指令丰富,功能齐全,使用方便。

完备性 2.有效性程序占空间小,执行速度快。

有效性: 2.有效性:程序占空间小,执行速度快。

3.规整性对称性,匀齐性,规整性:3.规整性:对称性,匀齐性,指令格式和数据格式的一致性。

据格式的一致性。

4.兼容性兼容性:4.兼容性:向上兼容”----系列机中低档机上运行“向上兼容”----系列机中低档机上运行的软件可以在高档机上运行。

的软件可以在高档机上运行。

20XX年3月15日10时45分计算机语言与硬件结构的关系高级语言的语句和用法与具体机器的指令系统无关;低级语言分机器语言和汇编语言,他们和具体机低级语言分机器语言和汇编语言,器的指令系统密切相关。

器的指令系统密切相关。

汇编语言与硬件的关系密切,编写的程序紧凑、汇编语言与硬件的关系密切,编写的程序紧凑、占内存小、速度快,占内存小、速度快,特别适合与编写经常与硬件打交道的系统软件;打交道的系统软件;而高级语言不涉及机器的硬件结构,通用性强、编写程序容易,件结构,通用性强、编写程序容易,特别适合与编写与硬件没有直接关系的应用软件。

编写与硬件没有直接关系的应用软件。

20XX年3月15日10时45分4概述机器指令的要素C C C C 操作码源操作数目的操作数下一条指令的引用指令字(简称指令)即表示一条指令的机器字。

指令字(简称指令)即表示一条指令的机器字。

计算机组成原理 指令系统

计算机组成原理 指令系统

IBM 370机的指令格式
8
4 4
4 4 4 12
RR型 RX型 RS型 SI型 SS型
OP
8
R1 R2 R1 X2
4 4
OP
8
B2
4
D2
12
OP
8
R1 R2
8
B2
4 B1 4
D2
12
OP
8
I2
8
D1
12 4 12
OP
L1
B1
D1
B2
D2
图4-1 IBM 370机的指令格式
2.非规整型
操作码字段的位数丌固定,丏分散地放 在指令字的丌同位置上。 PDP-11机(字长16位)的指令分为单 字长、两字长、三字长三种,操作码字段占4 ~16位丌等,可遍及整个指令长度。 显然,操作码字段的位数和位置丌固定 将增加指令译码和分析的难度,使控制器的设 计复杂化。
入 端口地址 如 出 如 AX, n IN AL, n CPU 的寄存器 OUT n, AL AX CPU 的寄存器 IN AL, DX AX, DX 端口地址 OUT DX, AL AX
4.2 寻址技术
所谓寻址,指的是寻找操作数的地址或下一 条将要执行的指令地址。寻址技术包括编址方 式和寻址方式。
AAA AAS AAM AAD AND OR NOT XOR TEST
3. 移位操作 算术移位
逻辑移位
循环移位(带迚位和丌带迚位)
4. 转移 (1) 无条件转移 JMP
(2) 条件转移 结果为零转 (Z = 1) JZ

结果溢出转
(O = 1)JO
300 …
完成触収器
结果有迚位转(C = 1)JC 跳过一条指令 SKP
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

【解答】 105种操作,故操作码取7位; 按题意有4种寻址方式,故寻址方式特征位
取2位. 指令格式如下:
OP M A 各字段含义说明(略)
7位 2位 7位
指令可直接寻址的范围:27=128; 一次间接寻址的范围: 216=65536.
(2)若存储字长不变,可采用什么方法直接 访问容量为16MB的主存?
OP操作码字段7位—97种操作;
M寻址方式特征字段3位—六种寻址方式; A形式地址字段16-7-3=6位.
(2)该指令直接寻址的最大范围是多少? 解: A是6位,26=64是直接寻址的最大范围. (3)一次间址和多次间址的寻址范围? 解: 存储字长16位,故一次间址寻址范围是216; 若多次间址,需用存储字的最高位来区别是
❖ 10条常用指令用4位编码表示,即从0000 到1001.
❖ 不常用的47条指令需要7位编码表示,即 从1010000到1111110,操作码平均长度:
❖ 4×80%+7×20%=4.6
4.1 指令格式
4.2指令和数据的寻址方式 4.3 CISC和RISC
4.3 CICS和RISC
一、指令系统的发展
(1)采用一地址或二地址格式; (2)有寄存器寻址、直接寻址和相对寻址(位
移量为-128~+127)三种寻址方式; (3)有16个通用寄存器,算术运算和逻辑运算
的操作数及运算结果都在寄存器中; (4)取数/存数指令在通用寄存器和主存之间
传送数据; (5)存储器容量为1MB,按字节编址. 要求设计算逻指令、取数/存数指令和相对
(4)有效地址通过变址寻址求得,变址寄存器 由16个通用R里的一个如Ri充当,则 EA=(Ri)+位移量.
ቤተ መጻሕፍቲ ባይዱ
例:某机配有基址寄存器和变址寄存器,采用 一地址格式的指令系统,允许直接和间接寻 址,且指令字长、机器字长和存储字长均为 16位,主存按字编址.
(1)若采用单字长指令,共能完成105种操作, 则指令可直接寻址的范围是多少?一次间 接寻址的寻址范围是多少?画出其指令格 式并说明各字段的含义.
【解答】
❖ 16MB=8M×16位,需要23位的地址位才 能访问该主存的全部单元.
❖ 可在上述(1)指令格式的基础上,采用双
字长指令;格式如下:
7位 2位 7位 OP M A1
形式地址A=A1//A2
A2
共23位;刚好寻址8M个16位.
例:某16位模型机共有64种操作,操作码位置 固定,且具有以下特点:
转移指令的格式,并简述设计理由.
解:
(1)算逻指令为R-R型,单字长16位二地址即
可:
M为寻址方式模式,表
6位 2位 4位 4位 示寄存器寻址、直接
OP M Ri
Rj 寻址和相对寻址.
各个字段位数及作用说明(略).
(2)取数/存数指令为R-S型,鉴于1MB寻址的
存储容量,需要使用双字长32位二地址格
式:
6位
OP
2位 4位
M Ri A2
注意其中Ri在 4位 取数时为目标地址, A1 存数时为源地址;
其他字段说明略.
解:
(3)相对转移指令:
按题目所给定的位移量-128~+127可知,
有8位补码表示该位移量即可;
再考虑OP字段6位和寻址方式字段2位,使
用单字长一地址指令就可以设计.
6位 2位 8位
OP M
A
各个字段位数及作用说明(略).
例:某机主存容量为4M×16位,且存储字长 等于指令字长,若该机指令系统能完成97 种操作,操作码位数固定,具有直接、间接、 变址、基址、相对、立即六种寻址方式.
(1)画出一地址指令格式并指出各字段作用. 解: 一地址指令格式为:
7位 3位 6位
OP M A
4.2.3 指令格式分析与设计方法举例
例:某16位机指令格式结构如下所示,试分
析指令格式及寻址方式特点.
15 10 9 8 7 4 3 0
OP
— 目标寄存器 源寄存器
解:(1)单字长二地址指令;
(2)OP即操作码字段6位,可指定64条指令;
(3)两个操作数都在寄存器中,故为R-R型指令, 可以分别指定16个通用寄存器;
1、50年代—计算机技术水平较低,使用的元件体积 大、功耗高、价格高,故硬件结构简单,指令系统的 功能也相对简单,其中只有加减及逻辑运算、数据传 送、转移等十几至几十条指令,寻址方式简单;
2、60年代后期--由于集成电路(IC) 出现,硬件结构越 加复杂,对指令系统功能的要求也越来越高,增设了乘 除运算、浮点运算、十进制运算、字符串处理等指令, 指令数目达一二百条,寻址方式趋于多样化,引入了各 种数据类型,指令系统不断扩大;
(4)该类指令结构常用于算逻运算类指令。
例:某16位机指令格式结构如下所示,试分析指
令格式及寻址方式特点.
15
10 9 8 7
43
0
OP
— 源寄存器 变址寄存器
位移量(16位)
解:
(1)双字长二地址指令;
(2)操作码字段6位,可指定64条指令;
(3)R-S型指令,一个操作数在通用寄存器(共 16个)中,另一个在主存中;
否继续间接寻址,故其寻址范围为215.
(4)立即数的范围? 解: A是6位,若是有符号数则立即数的范围是
-32~+31;无符号数则为0~63. (5)相对寻址的位移量(十进制数表示)? 解: 位移量为补码表示,所以有
-32~+31.
(6)上述六种寻址方式的指令哪一种执行时 间最短?哪一种执行时间最长?哪一种 便于用户编制处理数组问题的程序?哪 一种便于程序浮动?
解: 立即寻址的执行时间最短; 间接寻址的执行时间最长; 变址寻址指令便于用户编制处理数组问题
的程序; 相对寻址有利于程序浮动.
❖ 例:内存中数据分布如下,若A为单元地 址,(A)为A的内容.
地址 0 1 2 3 4 5 6 7 …N 内容 1 2 3 4 5 6 7 6 …5
试求:((7))-(N)+((N))+(((N)))=? 解:因为: ((7))=7, (N)=5,((N))=6,(((N)))=7 所以 :((7))-(N)+((N))+(((N)))=15 注意: 直接寻址、间接寻址的意义及表示法.
❖例:设某台计算机的指令系统中共有 57条指令:
❖(1) 若采用固定长度编码,其操作码的 编码长度需要多少位?
❖ 解:需要6位,即从000000到111011.
❖ (2) 设该指令系统中有10条指令的使用频 率为80%,其余为20%,若采用不等长编 码方式,其操作码的平均长度为多少?
❖ 解: 采用不等长编码方式时,常用的指令 用短的操作码表示,不常用的指令可用长 操作码表示.
相关文档
最新文档