(13)-4.3指令和数据的寻址方式_第1页
(13)-4.3指令和数据的寻址方式_第2页
(13)-4.3指令和数据的寻址方式_第3页
(13)-4.3指令和数据的寻址方式_第4页
(13)-4.3指令和数据的寻址方式_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

操作数的地址

4.3指令和数据的寻址方式

形成指令地址和操作数地址的方式称为寻址方式。这里的地址是指指令在计算机存储器内的物理地址(又称有效地址)

4.3.1指令的寻址方式

1.顺序寻址方式

指令的顺序寻址方式是指当执行一段程序时,要执行的下一条指令便是程序中当前正在执行指令的下一条指令(PC自动加1)。

2.跳跃寻址方式

指令的跳跃寻址方式是指程序不是顺序执行的,要执行的下一条指令的地址并不是程序计数器PC的当前值,而是根据当前指令的执行结果来确定的。例如条件转移指令、无条件转移指令、调用子程序指令等。4.3.2操作数的寻址方式

所谓操作数的寻址方式,是指形成操作数的有效地址的方式。常见的寻址方式有隐含寻址、立即寻址、寄存器直接寻址、寄存器间接寻址、直接寻址、间接寻址、相对寻址、基址寻址、址寻址、自动增量/减量寻址及堆栈寻址共11种。(不一定具有或只有这11种寻址方式)

在描述操作数的寻址方式时,本书将使用如下符号:

OP:操作码X:寻址模式

I:间接特征 R:通用寄存器

Rb:基址寄存器 Rx:变址寄存器

A:形式地址 E:操作数的有效地址

(E):地址E的内容S:操作数。

1.隐含寻址

例如,CWD;

把AX中的内容按照符号位扩展为DX:AX双字,源操作数的地址隐含为AX寄存器。

2.立即寻址

例如,MOVAX,1234H;OPXIA操作码寻址模式间接特征形式地址3.寄存器直接寻址操作数的有效地址E=R,操作数S=(E)=(R)4.寄存器间接寻址操作数的有效地址E=(R),操作数S=(E)=((R))在CPU里

5.直接寻址

操作数的有效地址E=(A),操作数S=(E)=((A))。

操作数的有效地址E=A,操作数S=(E)=(A)。

6.间接寻址

7.相对寻址

相对寻址是相对于程序计数器PC而言的。

操作数的有效地址E=(PC)+A,操作数S=(E)=((PC)+A)。

8.基址寻址

操作数的有效地址E=(Rb)+A,操作数S=(E)=((Rb)+A)。9.变址寻址

操作数的有效地址E=(Rx)+A,操作数S=(E)=((Rx)+A)。

10.自动增量/减量寻址

11.堆栈寻址

【例4.3】假设某计算机的字长是16为,它的某类指令格式如下所示,其中OP为操作码字段,试分析指令格式的特点。

解:指令格式的特点如下:单字长二地址指令;操作码字段OP为6位,最多可以设计64条不同功能的指令;源操作数和目的操作数均来自于通用寄存器(可分别指定16个通用寄存器),所以该类指令为RR型。由于该类指令的操作数均来自于CPU内的寄存器,因此操作速度快,这类指令结构常用于使用频度较高的算术逻辑运算类指令。4.3.3指令格式的分析与设计【例4.4】设某类指令格式如下所示,其中OP为操作码字段,试分析指令格式的特点。解:指令格式的特点如下:

双字长二地址指令;

操作码字段OP为6位,最多可以设计64条不同功能的指令;

一个源操作数来自于通用寄存器(可分别指定16个通用寄存器),另一个源操作数来自于存储器且采用变址寻址,操作数在存储单元的有效地址等于变址寄存器(可分别指定16个变址寄存器)的内容加上位移量,所以该类指令为RS型。这类指令结构常用于对存储器的访问。

由例4.3和例4.4指令格式的分析可以看出,在分析指令格式时,主要从以下四个方面来分析:

①几字长几地址指令;

②操作码字段为多少位,最多可以设计多少条不同功能的指令;

③源操作数和目的操作数分别来自于通用寄存器还是存储器,分别说明其寻址方式,可分别指定多少个通用寄存器或特殊寄存器,该类指令为什么类型;

④该类指令的适用场合。

[例4.6]设有一台计算机,其指令长度为16位,有一类RS型指令的格式如下:

其中,OP为操作码,占6位;R为寄存器编号,占2位,可访问4个不同的通用寄存器;MOD为寻址方式,占2位,与形式地址A一起决定源操作数,规定如下:

MOD=00,为立即寻址,A为立即数;

MOD=01,为相对寻址,A为位移量;

MOD=10,为变址寻址,A为位移量。

如图4.15所示,假定要执行的指令为加法指令,存放在1000H单元中,形式地址A的编码为01H,其中H表示十六进制数。该指令执行前存储器和寄存器的存储情况如图4.15所示,假定此加法指令的两个源操作数中一个来自于形式地址A或者主存,另一个来自于目的寄存器R0,并且加法的结果一定存放在目的寄存器R0中。图4.15存储器和寄存器中的数据

(1)若MOD=00,(R0)=________;

(2)若MOD=01,(R0)=________;

(3)若MOD=10,(R0)=________;

(PC)=________。

001

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论