我所了解的指令和数据的13种寻址方式

指令的寻址方式:

1、顺序寻址方式。

2、跳跃寻址方式。

操作数的基本寻址方式:(形式地址A变换为有效地址EA)

3、隐含寻址指指令不是明显的给出操作数的地址,而是在指令中隐含着的操作数的地址,操作数在专用寄存器中。主要优点:无储存器访问。主要缺点:数据范围有限。

4、立即寻址:指令的地址字段指出的不是操作数的地址,而是操作数本身。立即寻址的特点是指令中包含的操作数立即可用,节省了访问内存的时间。(操作数=A)

5、直接寻址是一种基本的寻址方式,其特点:在指令格式的地址字段中直接指出操作数在内存的地址A。(EA=A)

6、间接寻址间接寻址是相对于直接寻址而言,在间接寻址的情况下,指令地址字段中形式地址A不是操作数的真正地址,而是操作数地址的指示器。由于间接寻址访问两次内存,影响指令执行速度,现在较少使用。(EA=(A))

7、寄存器寻址当操作数不在内存中,而是放在CPU的通用寄存器中,可采用寄存器寻址方式。(EA=A)

8、寄存器间接寻址。寄存器间接寻址与寄存器寻址的区别在于:指令格式中的寄存器内容不是操作数,而是操作数的地址,该地址指明的操作数在内存中。(EA=(R))

9、相对寻址。隐含引用的专用寄存器是程序计数器(PC),它是当前PC的内容加上指令地址字段中A的值。使用相对寻址可节省指令中的地址位数,也便于程序在内存中成块搬动。(EA=A+(PC))

10、基址寻址。被引用的专用寄存器含有一个存储器的地址,地址字段含有一个相对于该地址的偏移量(通常是无符号整数)。(EA=(R)+A)

11、变址寻址。地址域引用一个主存地址,被引用的专用寄存器含有对那个地址的正偏移量。这意味着主存位数大于寄存器中的偏移量位数,与基址寻址刚好相反,但是二者有效地址的计算方法是相同的。(EA=A+(R)  R是正偏移量)

12、段寻址方式。微型机中采用了段寻址方式,它的本质是基址寻址。(EA=A+(R))

13、堆栈寻址。数据进栈时使用PUSH指令,将数据压入栈顶位置,堆栈指示器减一,数据退栈时,使用POP指令,数据从栈顶地址弹出,堆栈指示器加一。从而保证了堆栈中数据的先进后出的存取顺序。(EA=栈顶)

这是我从计算机组成原理(第五版)中总结的13种寻址方式。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值