偏移寻址

一概述

在这里插入图片描述

1.基址寻址

将CPU中基址寄存器(BR)的内容加上指令格式中的形式地址A,而形成操作数的有效地址,即EA=(BR)+A。
在这里插入图片描述
在这里插入图片描述
注:基址寄存器是面向操作系统的,其内容由操作系统或管理程序确定。在程序执行过程中,基址寄存器的内容不变(作为基地址),形式地址可变(作为偏移量)。
当采用通用寄存器作为基址寄存器时,可由用户决定哪个寄存器作为基址寄存器,但其内容仍由操作系统确定。
优点:可扩大寻址范围(基址的位数大于形式地址A的位数);用户不必考虑自己的程序存于主存的哪一空间区域。故有利于多道程序设计,以及用于编制浮点程序。

优点:可扩大寻址范围(基址寄存器的位数大于形式地址A的位数);用户不变考虑自己的程序
在这里插入图片描述

2.变址寻址

有效地址EA等于指令字中的形式地址A与变址寄存器IX的内容相加之和,
即EA=(IX)+A,其中IX为变址寄存器(专用),也可用通用寄存器作为变址寄存器。
在这里插入图片描述
注:变址寄存器是面向用户的,在程序执行过程中,变址寄存器的内容可用用户改变(作为偏移量),形式地址A不变(作为基地址).
优点:可扩大寻址范围(变址寄存器的位数大于形式地址A的位数);在数组处理过程中,可设定A为数组的首地址,不断改变变址寄存器IX的内容,便可很容易形成数组中任一数据的地址,特别适合编制循环程序。
在这里插入图片描述
变址寻址和基址寻址配合使用:EA=A+(BR)+(IX)
变址寻址与间接寻址配合使用;
如先变址后间址:EA=(A+(IX));
先间址后变址:EA=(A)+(IX)。

相对寻址

把程序计数器PC的内容加上指令格式中的形式地址A而形成操作数的有效地址,即EA=(PC)+A,其中A是相对于当前指令地址的位移量,可正可负,补码表示。
在这里插入图片描述
优点:操作数的地址不是固定的,它随着PC值的变化而变化,并且与指令地址之间总相差一个固定值,因此便于程序浮动。
相对寻址广泛应用于转移指令。

例题:

在这里插入图片描述
在这里插入图片描述

  • 6
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值