第五章指令系统(寻址方式以及指令寻址)

合集下载

第5章 指令系统

第5章  指令系统

1.立即寻址方式
寻找的操作数紧跟在指令操作码之后,也就是说 地址码字段存放的不是操作数的地址,而是操作 数本身。 立即寻址方式的特点是:指令执行的时间很短, 因为不需要访问存储器获取操作数,从而节省了 访问存储器的时间;立即寻址方式的使用范围很 有限,主要用于给寄存器赋初值。 【例5-1】 MOV AX,67 指令执行后,(AX)=67。
操作的示意图如下图所示,这条指令的执行结果为 (AX)=3412H。

存储器 操作码 操作码 AX 00H 代码段 位 移 DISP 量
01H 20000H
201A0H 12H 34H
数据段
6.基址变址寻址

操作数的偏移地址是一个基址寄存器(BX、BP) 和一个变址寄存器(SI、DI)的内容之和。基址 变址寻址方式的格式表示为:[基址寄存器名][变 址寄存器名]或[基址寄存器名+变址寄存器名]。操 作数默认位于那个段中,是由指令中使用的基址 寄存器决定的,如果指令中指定的基址寄存器是 BX,则操作数默认在数据段中,取DS寄存器的 值作为操作数的段地址值;如果指令中指定的基 址寄存器是BP,则操作数默认在堆栈段中,取SS 寄存器的值作为操作数的段地址值,从而计算得 操作数的20位物理地址,继而访问到操作数。
每条指令由两部分组成:操作码字段和地
址码字段。格式如图5-1所示:操作码操作 数(地址码)
操作码 操作数(地址码)
图5-1 指令格式
操作码字段:用来说明该指令所要完成的操作。 地址码字段:用来描述该指令的操作对象。一般是直接给 出操作数,或者给出操作数存放的寄存器编号,或者给出操作 数存放的存储单元的地址或有关地址的信息。 根据地址码字段所给出地址的个数,指令格式可分为零地 址、一地址、二地址、三地址、多地址指令。大多数指令需要 双操作数,分别称两个操作数为源操作数和目的操作数,指令 运算结果存入目的操作数的地址中去。这样,目的操作数的原 有数据将被取代。

第5章 指令系统

第5章 指令系统

第五章指令系统操作系统:DOS,WINDOWS,UNIX,......程序设计语言服务程序:KV300,PCTOOLS,...机器语言:汇编语言:高级语言解释执行编译执行PASCAL易教好学FORTRAN 计算C 长于计算控制BASIC易学好记COBOL事务管理应用软件:WORD,EXCEL,ACCESS,DBASE,......二进制,CPU直接执行的指令系统把源程序汇编成机器语言目标程序计算机系统软件5.1 指令系统概述计算机系统中运行的软件有系统软件和应用软件两种。

系统软件对整个计算机系统进行调度、管理、监视、服务,为用户提供使用方便,扩大机器功能,提高机器使用效率。

应用软件是用户针对某种领域实际应用需求而开发的软件。

许多通用商品化的应用软件现已成为系统软件,如Word 等。

前述所有各种软件的设计基础就是计算机的指令系统。

名词解释:指令:命令计算机直接进行某种基本操作的二进制代码串,也叫机器语言代码。

每条指令可以完成一个独立的算术运算或逻辑运算操作。

从计算机组成的层次结构来说,计算机的指令有微指令、机器指令和宏指令。

微指令是微程序级的命令,它属于硬件;宏指令是由若干条机器指令组成的软件指令,它属于软件;而机器指令则介于微指令与宏指令之间。

指令系统:一台计算机能直接理解与执行的全部指令的集合称为该机的指令系统,也叫机器语言。

指令系统是进行计算机逻辑设计和编制程序的基本依据。

它直接说明了这台计算机的功能.不同类型CPU的指令系统是不能混用与兼容的,但同一系列的CPU一般升级后指令都有扩充,并可兼容。

复杂指令系统计算机(CISC)和精简指令系统计算机(RISC)5.2指令格式5.2.1 指令的结构指令字:代表指令的一组二进制代码信息;指令长度:指令字中二进制代码的位数;1、典型的指令格式OP A操作码OP——指明操作性质的命令码,提供指令的操作控制信息。

操作对象A——说明操作数存放的地址,有时则就是操作数本身。

第五章 指令系统习题

第五章 指令系统习题

第五章指令系统一、选择题1、采用直接寻址,操作数在中。

A、主存B、寄存器C、硬盘D、光盘2、为了缩短指令中某个地址段的位数,有效的方法是采取。

A、立即寻址B、变址寻址C、间接寻址D、寄存器寻址3、指令系统采用不同寻址方式的目的是。

A、实现存储程序和程序控制B、缩短指令长度,扩大寻址空间,提高编程灵活性C、可以直接访问外存D、提供扩展操作码的可能,并降低指令译码难度4、假设寄存器R中的数值为200,主存地址为200和300的地址单元中存放的内容分别是300和400,则方式下访问到的操作数为200。

A、直接寻址200B、寄存器间接寻址(R)C、存储器间接寻址(200)D、寄存器寻址R5、输入输出指令的功能是。

A、进行算术运算和逻辑运算B、进行主存和CPU之间的数据传送C、进行I/O设备和CPU之间的数据传送D、改变程序执行的顺序6、下列关于RISC的描述中,不正确的是。

A、只选用简单的,使用频率高的指令,所以采用RISC的CPU的性能较差,不能运行复杂的指令B、指令长度固定,指令格式和寻址方式少C、采用硬布线逻辑,提高指令执行的速度D、采用指令流水线技术,大部分指令都能在一个机器周期中完成。

7、间接寻址是指。

A、指令中直接给出操作数地址B、指令中直接给出操作数C、指令中间接给出操作数D、指令中间接给出操作数的地址8、基址寻址方式中,操作数的有效地址等于。

A、基址寄存器的内容加上形式地址(偏移量)B、变址寄存器的内容加上形式地址(偏移量)C、程序计数器的内容加上形式地址(偏移量)D、堆栈寄存器的内容加上形式地址(偏移量)8.通常指令编码的第一个字段是__ __A.操作B.指令C.操作码D.控制码9.堆栈常用于 _A.程序转移B.输入输出C.数据移位D.保护程序现场10.在堆栈中保持不变的是_ _A.栈指针B.栈底C.栈顶D.栈中数据11.设寄存器R=1000,地址1000处的值为2000,2000处为3000,PC的值为4000,用相对寻址方式,-2000(PC)的操作数是__ __A.4000 B.3000C.5000 D.700012.直接转移指令的功能是将指令中的地址代码送入__ __A.PC B.累加器C.存储器 D.地址寄存器13.以下的 D 不能支持数值处理。

第 5 章 指令系统

第 5 章 指令系统

2013-11-23
25
• 一地址指令长度短,指令执行速度快 (若A为存储器地址,只需一次访存取 数),对于字长较短的微、小型机,是 一种常用的指令格式。
2013-11-23
26
5.零地址指令
• 零地址指令中只有操作码而无地址码,其指令 格式为; OP
• 零地址指令有两种情况: • ① 不需操作数的控制型指令,如HALT、WAIT、 NOP等。 • ② 运算型零地址指令:操作数隐含在堆栈中。
2013-11-23 15
• 三地址指令格式:
OP A1 A2 A3
• • • • •
A1:第一源操作数的存储器地址或寄存器地址; A2:第二源操作数的存储器地址或寄存器地址; A3:存放操作结果的存储器地址或寄存器地址; 三地址指令功能为: (A1)OP(A2)→A3; PC 指示下条指令地址
2013-11-23
2013-11-23 29
2) 变长编码
• 变长编码的指令操作码:不同指令的操作码长度 不完全相同,操作码的位数不固定,分散地放在 指令字的不同位置上。 • 变长编码操作码的特点: • 可用较短的指令字长表示更多的操作类型,寻址 较大的存储空间。 • 操作码的位数不固定,且位置分散,增加了指令 译码与分析的难度,使硬件设计复杂化。 • 在早期的微、小型机中,由于指令字较短,均采 用变长编码的指令操作码。如Intel 8086、PDP一 11等机器。
2013-11-23 32
0000 xxxx xxxx xxxx 15条三地址指令 1110 xxxx xxxx xxxx 1111 0000 xxxx xxxx 15条二地址指令 1111 1110 xxxx xxxx 1111 1111 0000 xxxx 15条单地址指令 1111 1111 1110 xxxx 1111 1111 1111 0000 16条零地址指令 1111 1111 1111 1111 2013-11-23 33

指令系统

指令系统


然而,指令结构太复杂也会带来一些不利的 因素,如设计周期长,正确性难以保证且不 易维护等;此外,实验证明,在如此庞大的 指令系统中,只有诸如算术、逻辑运算、数 据传送、转移和子程序调用等几十条最基本 的指令才是经常使用的,而需要大量硬件支 持的大多数较复杂的指令却利用率很低,造 成硬件资源的极大浪费。为了解决这个问题, 在70年代末人们提出了便于VLSI实现的精简 指令系统计算机,简称RISC(见5.7节)。

指令的长度与机器的字长没有固定的关系, 它既可以小于或等于机器的字长,也可以大 于机器的字长。前者称为短格式指令,后者 称为长格式指令,一条指令存放在地址连续 的存储单元中。在同一台计算机中可能既有 短格式指令又有长格式指令,但通常是把最 常用的指令(如算术逻辑运算指令、数据传送 指令)设计成短格式指令,以便节省存储空间 和提高指令的执行速度。
5.2.2 术

指令操作码的扩展技
指令操作码的长度决定了指令系统中完成不同操作 的指令条数。若某机器的操作码长度为K位,则它最 多只能有2k条不同指令。指令操作码通常有两种编码 格式,一种是固定格式,即操作码的长度固定,且 集中放在指令字的一个字段中。这种格式对于简化 硬件设计,减少指令译码时间非常有利,在字长较 长的大、中型机和超级小型机以及RISC上广泛采用。 另一种是可变格式,即操作码的长度可变,且分散 地放在指令字的不同字段中。这种格式能够有效地 压缩程序中操作码的平均长度,在字长较短的微码长度的选择
指令 概率Pi(%) 操作码 操作码长度 (位 ) 2 2 2 4 4 4 4
I1 I2 I3 I4 I5 I6 I7
45 28 17 5 3 1 1
00 01 10 1100 1101 1110 1111

《计算机组成原理》5-指令系统

《计算机组成原理》5-指令系统
◆程序的指令序列在主存顺序存放。执行时从第一条指令 开始,逐 条取出并执行,这种程序的顺序执行过程,称为 顺序寻址方式。
◆ CPU中设置程序计数器(PC)对指令的顺序号进行计 数。PC开始时存 放程序的首地址,每执行一条指令,PC 加”1”,指出下条指令的地址, 直到程序结束。
跳跃寻址 Leabharlann 转移指令指出AA22AA33




1111 1110 A2 A3
12 位操作码
1111 1111 0000 1111 1111 0001
AA33




1111 1111 1110 A3
16 位操作码


1111 1111 1111 0000 1111 1111 1111 0001 1111 1111 1111 1111
24
双字
28
双字(地址32)▲
32
双字
36
边界未对准
地址(十进制)
字( 地址2)
半字( 地址0)
0
字节( 地址7) 字节( 地址6)
字( 地址4)
4
半字( 地址10)
半字( 地址8)
8
5.2.2 数据类型
2、数据在计算机中存放方式
存储字长内部字节的次序
例: 12345678H如何存储? 12 34 56 78H
5.3.1指令寻址
指令寻址----计算指令有效地址的方法
指令地址
指令
指令地址寻址方式
PC +1
0 LDA
11 ADD 22 DEC 33 JMP
4 LDA
5 SUB 6 INC
77 STA 88 LDA

计算机组成原理指令系统

计算机组成原理指令系统


Ri 操作数
Rn 寄存器
• 执行阶段不访存,只访问寄存器,执行速度快 • 寄存器个数有限,可缩短指令字长
6. 寄存器间接寻址
EA = ( Ri )
寻址特征
OP
Ri
指令中的形式地址为寄存器的编 号,寄存器的内容是操作数的有 效地址。
主存
R0


Ri 地址
操作数


MOV AX , [BX]
Rn 寄存器
PC
7. 基址寻址
(1) 采用专用基址寄存器(隐式)
EA = ( BR ) + A
BR 为基址寄存器
寻址特征
OP
A
主存
BR
ALU
操作数
• 可扩大寻址范围 • BR 内容由操作系统或管理程序确定 • 在程序的执行过程中 BR 内容不变,形式地址 A 可变
(2) 采用通用寄存器作基址寄存器(显式)
寻址特征
(1) 寄存器寻址 R (2)寄存器间接寻址 (R)
(3)直接寻址 1000 (4)存储器间接寻址 (1000)
(5)相对寻址-2000(PC) (6)立即数寻址 #2000
解: (1) Data=( R)=1000 (2) Data=( ( R) )=(1000)=2000 (3) Data=(1000)=2000 (4) Data=((1000))=(2000)=3000 (5) EA=(PC)-2000=4000-2000=2000
(1) 相对寻址举例
LDA # 0
LDX # 0
M
ADD X, D
M+1 INX
M+2 M+3
CPX # N BNE M DIV # N

指令寻址方式

指令寻址方式

第五章 指令系统
5.1 基本概念 5.2 指令格式 5.3 寻址方式 5.4 指令的种类 5.5 指令系统的发展 教学重点和难点 • 寻址方式
2006
第五章 指令系统
CS&T Information Co址码寻找指令中操作数形式地址的方式。
操作数的三种存放方式: 直接包含在指令中 立即数: 立即数寻址 包含在某个寄存器中 寄存器操作数:寄存器寻址 在内存中 存储器操作数(内存操作数):存储器寻址
这种寻址常常在CPU内部传送数据,该指令操作时不访问 主存。速度快。
寄存器寻址
2006
第五章 指令系统
CS&T Information Course
5.3 寻址方式
三、存储器寻址
2006
第五章 指令系统
CS&T Information Course
5.3 寻址方式
1、直接寻址
数据总是在存储器中,存储单元的有效地址由指令给出。 这是访问主存中操作数的最简单的方式。
直接寻址
2006
第五章 指令系统
CS&T Information Course
5.3 寻址方式
2、寄存器间接寻址
操作数存储器中,存储单元的有效地址由指令指定的寄存器 给 出。 特点:指令字长有效缩短,这时地址长度取决于CPU内通用寄 存器的数量,而可访问的存储空间取决于寄存器的字长。
寄存器间接寻址
2006
CS&T Information Course
第五章 指令系统
5.1 基本概念 5.2 指令格式 5.3 寻址方式 5.4 指令的种类 5.5 指令系统的发展
2006
CS&T Information Course

寻址方式和指令系统

寻址方式和指令系统

寻址⽅式和指令系统《微机原理》复习思考题第3章 8086的寻址⽅式和指令系统3.1 8086汇编语⾔指令的寻址⽅式有哪⼏类?⽤哪⼀种寻址⽅式的指令执⾏速度最快?3.2 直接寻址⽅式中,⼀般只指出操作数的偏移地址,那么,段地址如何确定?如果要⽤某个段寄存器指出段地址,指令中应如何表⽰?3.3 在寄存器间接寻址⽅式中,如果指令中没有具体指明段寄存器,那么,段地址如何确定?3.4 ⽤寄存器间接寻址⽅式时,BX,BP,SI,DI分别针对什么情况来使⽤?这四个寄存器组合间接寻址时,地址是怎样计算的?举例进⾏说明。

3.5 设DS=2100H,SS=5200H,BX=1400H,BP=6200H,说明下⾯两条指令所进⾏的具体操作:MOV BYTE PTR [BP], 2000MOV WORD PTR [BX], 20003.6 使⽤堆栈操作指令时要注意什么问题?传送指令和交换指令在涉及内容操作数时分别要注意什么问题?3.7 下⾯这些指令中哪些是正确的?哪些是错误的?如果是错误的,请说明原因。

XCHG CS, AXMOV [BX], [1000]XCHG BX, IPPUSH CSPOP CSIN BX, DXMOV BYTE[BX], 1000MOV CS, [1000]3.8 8086系统中,当对SS和SP寄存器的值进⾏修改时,有什么特殊规定?这样做的原因是什么?[解答] 凡是遇到给SS寄存器赋值的传送指令时,系统会⾃动禁⽌外部中断,等到本条指令和下条指令执⾏之后,⼜⾃动恢复对SS寄存器赋值前的中断开放情况。

这样做是为了允许程序员连续⽤两条指令分别对SS和SP寄存器赋值,同时⼜防⽌堆栈空间变动过程中出现中断。

3.9 以下是格雷码的编码表0——0000 1——0001 2——0011 3——0010 4——01105——0111 6——0101 7——0100 8——1100 9——1101请⽤换码指令和其他指令设计⼀个程序段,实现格雷码往ASCII的转换。

chapter 5-指令系统

chapter 5-指令系统

(2)用变址寻址方式缩短地址码长度 由于程序局部性原理,在变址寻址方式中使用的地址偏移量可以比较 短,可把比较长的基地址放在变址寄存器中,在指令的地址码中只需 给出比较短的地址偏移量。
(3)用寄存器/寄存器间接寻址方式缩短地址码长度 由于寄存器的数量比较少,表示一个寄存器的地址只需很少几位,而 一个寄存器足可以放下一个逻辑地址。
把基址寄存器的内容和D的内容相加,作为有效地址。
其中基址寄存器中的值不变,D中的值可变。
E = (BX)+ D S = (E)= ((BX)+D)
特点:
基址寄存器的位数可以设得很长,因
而,可以扩大寻址能力。
19
8)变址寻址:数据在主存中
把变址寄存器的内容和D的内容相加,作为有效地址。 其中变址寄存器中的值可变,D中的值不变。
优点:既解决了寻址范围的问题,又不增加访内存的次数
6)相对寻址:数据在内存中
把PC的值和指令中形式地址D的内容相加,作为有效地址。PC的值是当
前指令的还是下一条指令的?
特点: E=(PC) + D S= (E) = ((PC)+D) 程序员可以使用相对地址编程,所编制的 程序可以放在内存的任意可以使用的地方
9 11 22 53 44 3 2 0 . 5
(( 7 )) = 9
( N )= 5
(( N )) = 3 ((( N )))=53 结果 = 60
21
9)堆栈寻址方式 堆栈是计算机中的暂存单元 a)串联堆栈 •组成: CPU内的一组专门寄存器组成,每个寄存器保存一个字 •操作 进栈:将某个通用寄存器中的数据送入堆栈。
103 100 Jmp 103
11
2.操作数的寻址方式 操作数来源基本上有三种情况: ⑴操作数直接来自指令地址字段; ⑵操作数来自寄存器中,即寄存器操作数; ⑶操作数来自主存,即存储器操作数。

《嵌入式系统基础教程》第09讲第5章ARM指令集特点寻址方式和指令

《嵌入式系统基础教程》第09讲第5章ARM指令集特点寻址方式和指令

标志
C=1,Z=0 C=0,Z=l
N=V N!=V Z=0,N=V Z=1,N!=V 任何 ARMv3之前
含义
无符号数大于 无符号数小于或等于 有符号数大于或等于 有符号数小于 有符号数大于 有符号数小于或等于 无条件执行(指令默认条件) 该指令从不执行
2008年6月28日
《嵌入式系统基础教程》第09讲第5 章ARM指令集特点寻址方式和指令
《嵌入式系统基础教程 》第09讲第5章ARM指 令集特点寻址方式和指

2023/5/9
《嵌入式系统基础教程》第09讲第5 章ARM指令集特点寻址方式和指令
第5章 ARM指令集和汇编语言程序
l 本章主要介绍以下内容:
l ARM指令集的基本特点 l 与Thumb指令集的区别 l 与x86处理器的区别 l ARM指令格式
l 举例:
l SUB R1,R1,R2 ;R1-R2→R1 l MOV PC,R0 ;PC←R0,程序跳转到指定地址 l LDR R0,[R1],-R2
;读取R1地址上的存储器单元内容并存入R0, ;且R1=R1-R2,后索引偏移 l AND R0,R5,R2 ;R2中存放的是第2操作数 ;该数据属于寄存器方式的第2操作数
运算指令能够访问存储器
2008年6月28日
《嵌入式系统基础教程》第09讲第5 章ARM指令集特点寻址方式和指令
ARM指令集的编码格式
l 参看ARM指令集编码格式PDF文件
2008年6月28日
《嵌入式系统基础教程》第09讲第5 章ARM指令集特点寻址方式和指令
ARM指令集的语法
l 一条典型的ARM指令语法如下所示:
寄存器寻址
l 操作数的值在寄存器中,指令中的地址码字段指 出的是寄存器编号,指令执行时直接取出寄存器 值来操作。寄存器寻址指令举例如下:

寻址方式及指令系统

寻址方式及指令系统

协同发展提高计算机性能
通过寻址方式和指令系统的协同发展,可以不断提高计 算机的性能和灵活性,满足不断变化的计算需求。
谢谢
THANKS
序的可读性和可维护性。此外,间接寻址方式还可以用于实现间接函数调用、数组元素的访问等。
基址寻址方式
总结词
基址寻址方式是指将基址寄存器BX或BP 的内容加上位移量DISP。
VS
详细描述
在基址寻址方式中,操作数的有效地址是 由基址寄存器BX或BP的内容与位移量 DISP相加得到的。基址寻址方式常用于 数组元素的访问和变址运算等场景。通过 基址寻址方式,可以方便地实现数组元素 的遍历和跳转等操作。
变址寻址方式
总结词
变址寻址方式是指将变址寄存器的内容加上 位移量DISP。
详细描述
在变址寻址方式中,操作数的有效地址是由 变址寄存器的内容与位移量DISP相加得到 的。变址寻址方式常用于数组元素的访问和 程序中的循环结构等场景。通过变址寻址方 式,可以实现数组元素的动态遍历和循环变 量的自增等操作。
02 指令系统概述
CHAPTER
指令系统的定义
指令系统的定义
指令系统是计算机硬件能够直接执行 的指令集合,它规定了计算机所具有 的基本功能。
指令系统的特点
指令系统是计算机体系结构的核心组 成部分,其特点包括指令集的规模、 指令的功能、寻址方式、操作码的长 度等。
指令系统的组成
指令格式
01
指令格式是指令系统中每条指令的固定格式,包括操作码和地
间接寻址方式
总结词
间接寻址方式是指操作数通过间接指定的地址来访问,而不是直接给出操作数的值或寄 存器名称。
详细描述
在间接寻址方式中,指令中的地址码指示的是一个内存单元的地址,而不是直接给出操作数的值或寄存器名 称。通过访问该内存单元,可以得到操作数的值。间接寻址方式的优点是可以隐藏操作数的实际值,提高程

计算机组成原理——指令系统5

计算机组成原理——指令系统5

15条二地址指令
12 位操作码
1111 1111 0000 1111 1111 0001 1111 1111 1110 … …
16 位操作码
1111 1111 1111 0000 1111 1111 1111 0001 1111 1111 1111 1111 … … …

… …
15条一地址指令
16条零地址指令
RISC
RISC——精简指令系统计算机 RISC的优点 RISC通过简化指令功能使计算机结构更为合理从而提高计算速度 RISC将原CISC中复杂指令用子程序代替 I增多,CPI大大减少 P减少
其中:I为目标程序的指令数、CPI每条指令平均周期数
故:指令执行时间P=I*CPI*T
RISC的特点 (1)优先选取使用频率高以及很有用但不复杂的指令。 (2)指令长度固定,指令格式、寻址方式种类少。 (3)除取数/存数指令外,其余指令操作都在寄存器之间。 (4)CPU中通用寄存器数量多。 (5)大部分指令在一个或小于一个机器周期内完成。 (6)以硬布线控制逻辑为主,不用或少用微码控制。 (7)一般用高级语言编程,重视编译优化工作。
• 指令执行阶段不访存 • A 的位数限制了立即数的范围
2. 直接寻址
EA = A 有效地址由形式地址直接给出
寻址特征
主存
LDA
A
A 操作数 ACC
• 执行阶段访问一次存储器
• A 的位数决定了该指令操作数的寻址范围
• 操作数的地址不易修改(必须修改A)
3. 隐含寻址
操作数地址隐含在操作码中
寻址特征
(1) 四地址
8
6
6
6
6
OP A1 A2 A3 A4

计算机组成原理第五章单元测试(含答案)

计算机组成原理第五章单元测试(含答案)

计算机组成原理第五章单元测试(含答案) 第五章指令系统测试1.在以下四种类型指令中,哪种指令的执行时间最长?(单选)A。

RR型指令B。

RS型指令C。

SS型指令D。

程序控制类指令2.程序控制类指令的功能是什么?(单选)A。

进行算术运算和逻辑运算B。

进行主存与CPU之间的数据传送C。

进行CPU和I/O设备之间的数据传送D。

改变程序执行的顺序3.单地址指令中,为了完成两个数的算术运算,除地址码指明的一个操作数外,另一个常需采用的寻址方式是什么?(单选)A。

立即数寻址B。

寄存器寻址C。

隐含寻址D。

直接寻址4.以下哪个选项属于指令系统中采用不同寻址方式的目的?(单选)A。

为了实现软件的兼容和移植B。

缩短指令长度,扩大寻址空间,提高编程灵活性C。

为程序设计者提供更多、更灵活、更强大的指令D。

丰富指令功能并降低指令译码难度5.在寄存器间接寻址方式中,操作数存放在哪里?(单选)A。

通用寄存器B。

主存C。

数据缓冲寄存器MDRD。

指令寄存器6.指令采用跳跃寻址方式的主要作用是什么?(单选)A。

访问更大主存空间B。

实现程序的有条件、无条件转移C。

实现程序浮动D。

实现程序调用7.以下哪种寻址方式有利于缩短指令地址码长度?(单选)A。

寄存器寻址B。

隐含寻址C。

直接寻址D。

间接寻址8.假设某条指令的一个操作数采用寄存器间接寻址方式,假定指令中给出的寄存器编号为8,8号寄存器的内容为1200H,地址1200H中的内容为12FCH,地址12FCH中的内容为3888H,地址3888H中的内容为88F9H,则该操作数的有效地址是什么?(单选)A。

1200HB。

12FCHC。

3888HD。

88F9H9.假设某条指令的一个操作数采用寄存器间接寻址方式,假定指令中给出的寄存器编号为8,8号寄存器的内容为1200H,地址1200H中的内容为12FCH,地址12FCH中的内容为3888H,地址3888H中的内容为88F9H,则该操作数的值是什么?(单选)A。

指令、操作数的寻址方式

指令、操作数的寻址方式

计算机组成原理 指令、操作数的寻址方式
2.2.7、变址寻址方式 在变址寻址方式中,通常在CPU内部设置 有一个或几个专用的变址寄存器,操作数 的有效地址=(变址寄存器)+形式地址。
计算机组成原理 指令、操作数的寻址方式
具体的指令如:MOV AL,[SI+0FH] 其中SI是CPU的16位变址寄存器,是变址寻 址方式,它的内容加上形式地址0FH是操作 数的有效地址,同样是一个偏移量,该内存 单元的内容即为操作数,假设为0。操作码 MOV表示传送操作,即把0传送给AL。
计算机组成原理 指令、操作数的寻址方式
若一个指令系统中只有上述8种寻址方式, 那么需要3位寻址方式特征位(23=8)。
计算机组成原理 指令、操作数的寻址方式
寻址方式特征 位 000 001 010 011 100 101 110 111
寻址方式
寄存器寻址 立即数寻址
直接寻址 间接寻址 隐含寻址 相对寻址 变址寻址 基址寻址
计算机组成原理 指令、操作数的寻址方式
•跳跃寻址方式 当执行到转移指令时,下一条指令地址不是 由PC给出,而是由本条指令给出,程序跳跃 后,按新的指令地址开始顺序执行,这时内容也相应改变,以便及时跟踪新的指令地 址。
计算机组成原理 指令、操作数的寻址方式
2、操作数的寻址方式 2.1、概述 通常操作数可以用如下三种方式给出: 指令中的操作数部分就是操作数本身。
计算机组成原理 指令、操作数的寻址方式
一般地,指令系统中都包含有如下8种典 型的寻址方式:寄存器寻址、立即数寻址、 直接寻址、 间接寻址、隐含寻址、相对 寻址、变址寻址、基址寻址。但是一个操 作数只能有一种寻址方式,到底是哪一种 寻址方式呢?由寻址方式特征位来决定, 即在指令的每个操作数部分中留出几位作 为寻址方式特征位。

微控制器寻址方式与指令系统

微控制器寻址方式与指令系统

§3.2指令分类
• 数据传送类 • 算术运算类 • 逻辑操作类 • 控制转移类及设置类
12、、123R[R[、、、R装存,d123d=A=C...源加减乘M载储R12a操xr逻 逻 逻地..r±法法法数 数y作址软 程]源辑 辑 辑]运 运 运据 据=操中 序R与 或 异作算 算 算s 断 转数或移 3、45、、R堆45d..=求比栈34-测 移源..补较操操子 功试 位作作调 能数 用 设置
4、R2=D:[R3 - -] //((R3))=>R2, //(R3)-1=>R3。
5、主要用于堆栈操作
2、寄存器前置增量间接寻址
3、寄存器后置增量间接寻址
4、寄存器后置减量间接寻址
5、寄存器自动增减量间接寻址
五、变址寻址
R1=[BP+IM6] //((BP)+IM6)=>R1
六、PC相对寻址
用于转移指令,(PC)±IM6;IM6<=63
PUSH Rx,Rx to [SP] ▪压入某两个或多个寄存器
PUSH Rx,Ry to [SP] ▪先压栈,SP内容自动减1。 ▪不影响标志位。
例1、执行指令 PUSH R3,PC to [SP]
X
X
高 地
X
X

SP
PC
SR
R5
R4
R3

SP


2、出栈指令
POP Rx,Ry from [SP]
▪ 将以Rs的内容为起始地址的一组存储器中的内容 送到Rx~Ry中。先传送低序号寄存器。
▪ 弹出到单个寄存器 POP Rx,Rx from [SP]
▪ SP内容先自动增量,再弹出。 ▪ 影响标志位N、Z。

计算机组织与系统结构第五章习题答案

计算机组织与系统结构第五章习题答案

第 5 章习题答案3.假定某计算机中有一条转移指令,采用相对寻址方式,共占两个字节,第一字节是操作码,第二字节是相对位移量(用补码表示),CPU每次从内存只能取一个字节。

假设执行到某转移指令时PC的内容为200,执行该转移指令后要求转移到100开始的一段程序执行,则该转移指令第二字节的内容应该是多少?参考答案:因为执行到该转移指令时PC为200,所以说明该转移指令存放在200单元开始的两个字节中。

因为CPU每次从内存只能取一个字节,所以每次取一个字节后PC应该加1。

该转移指令的执行过程为:取200单元中的指令操作码并译码→PC+1→取201单元的相对位移量→PC+1→计算转移目标地址。

假设该转移指令第二字节为Offset,则100=200+2+Offset,即Offset = 100–202 = –102 = 10011010B(注:没有说定长指令字,所以不一定是每条指令占2个字节。

)4.假设地址为1200H的内存单元中的内容为12FCH,地址为12FCH的内存单元的内容为38B8H,而38B8H单元的内容为88F9H。

说明以下各情况下操作数的有效地址和操作数各是多少?(1)操作数采用变址寻址,变址寄存器的内容为12,指令中给出的形式地址为1200H。

(2)操作数采用一次间接寻址,指令中给出的地址码为1200H。

(3)操作数采用寄存器间接寻址,指令中给出的寄存器编号为8,8号寄存器的内容为1200H。

参考答案:(1)有效地址EA=000CH+1200H=120CH,操作数未知。

(2)有效地址EA=(1200H)=12FCH,操作数为38B8H。

(3)有效地址EA=1200H,操作数为12FCH。

5.通过查资料了解Intel 80x86微处理器和MIPS处理器中各自提供了哪些加法指令,说明每条加法指令的汇编形式、指令格式和功能,并比较加、减运算指令在这两种指令系统中不同的设计方式,包括不同的溢出处理方式。

第5章 指令系统习题

第5章 指令系统习题

第5章指令系统〔习题5.1〕简答题(1)定长指令字和定长操作码是一回事吗?(2)什么是Load-Store指令集结构?(3)为什么将查找操作数的方法称为数据寻“址”方式?(4)是什么特点决定了目标地址的相对寻址方式应用最多?(5)堆栈的存取原则是什么?(6)IA-32处理器的INC,DEC,NEG和NOT都是单操作数指令,这个操作数应该是源操作数还是目的操作数?(7)IA-32处理器的乘除法运算针对无符号数和有符号数,有两种不同的指令。

只有一种指令的加减法如何区别无符号数和有符号数运算?(8)为什么判断无符号数大小和有符号大小的条件转移指令不同?(9)汇编语言的标识符大小写不敏感意味着什么?(10)为什么说RISC是计算机结构上的革新?〔习题5.2〕判断题(1)存储器寻址方式的操作数当然在主存了。

(2)堆栈的操作原则是“先进后出”,压入数据是PUSH指令、弹出数据是POP指令。

(3)空操作NOP指令其实根本没有指令。

(4)指令指针或者还包括代码段寄存器值的改变将引起程序流程的改变。

(5)JMP指令对应高级语言的GOTO语句,所以不应使用。

(6)IA-32处理器的条件转移指令Jcc要利用标志作为条件。

(7)处理器的传送指令MOV属于汇编语言的执行性语句。

(8)MASM汇编语言的注释用分号开始,但不能用中文分号。

(9)通常,RISC处理器只有“取数LOAD”和“存数STORE”指令访问存储器。

(10)RISC的指令条数少、指令简单、格式固定,所以编译程序也就容易实现,并且不需要优化。

〔习题5.3〕填空题(1)JMP指令根据目标地址的转移范围和寻址方式,可以分成四种类型:段内转移、__________,段内转移、__________和段间转移、__________,段间转移、__________。

(2)IA-32处理器将ESI寄存器内容压入堆栈的指令是__________,将堆栈顶部数据弹出到EDI寄存器的指令是__________。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机组成原理第五章指令系统5.2 寻址方式及指令寻址
1寻址方式的概念
根据冯诺依曼计算机的工作原理,需要根据物理地址从内存中去取指令和数据。

如何获得指令和数据的物理地址?!
寻址方式
寻找指令和操作数有效地址的方法
2指令的寻址方式
■计算指令有效地址的方法;
■指令的寻址方式只有两种
◆顺序寻址
◆跳跃寻址
2指令的寻址方式
■指令的顺序寻址
◆程序的指令序列在主存顺序存放。

执行时从第一条指令开始(!),逐
条取出并逐条执行,这种程序的顺序执行过程,称为顺序寻址方式。

◆CPU中设置程序计数器(PC)对指令的顺序号进行计数。

PC开始时存
放程序的首地址,每执行一条指令,PC 加”1”,指出下条指令的地址,
直到程序结束。

2指令的寻址方式
■指令的顺序寻址
100Inc AX add ax,bx PC +1100101内存101OP
M S R S M d R d
IR Mem[pc++]需要深刻理解“+1”存储1条指令占用的字节单元数
与存储字长有关!
■指令的跳跃寻址IR
100JMP 103MOV AX,BX PC
内存100
101
102
103
+1JMP 103指令寄存器IR MOV AX,BX 101103104PC IR(A)2指令的寻址方式。

相关文档
最新文档