指令和数据的寻址方式

一、指令寻址
1:、顺序寻址 , PC+1 -> PC ;PC程序计数器寄存器用于存储要执行的下一条指令的地址
2、跳跃寻址, 如 JMP 7;无条件跳转到7号地址的指令;
二、数据寻址
1、指令格式
操作码

寻址特征

形式地址A

形式地址 A:机器指令中操作数的形式地址;

有效地址EA:操作数的真实地址; effective address;

约定: 指令字长=存储字长=机器字长;

2、数据寻址方式(10种)
2.1立即寻址
形式地址A就是操作数;(无需访存)

2.2直接寻址
形式地址A就是有效地址EA;(无需访存)

2.3 隐含寻址
操作数地址隐含在操作码中;根据操作码隐含指出操作数在某寄存器中;(如操作数在寄存器中,无需访存)

2.4 间接寻址
通过访存取出形式地址A指向的内存单元的操作数有效地址EA;再通过访存取出有效地址EA指向的内存单元的操作数;(需要2次访存)

2.5 寄存器寻址
形式地址就是寄存器编号,操作数存储在寄存器中;(无需访存)

2.6 寄存器间接寻址
形式地址就是寄存器编号,但操作数有效地址存储在寄存器中;(需要1次访问寄存器,1次访存);

2.7 基址寻址
操作数有效地址EA等于基址+形式地址A;其中基址存储在专用寄存器或通用寄存器中,形式地址作为偏移量;专用寄存器或BR,通用寄存器如R0;(1次计算,1次访存);(注意,基址不变,但形式地址改变,通常用于多道程序设计);

2.8 变址寻址
操作数有效地址EA等于变址+形式地址A;其中变址存储在变址寄存器IX(或通用寄存器)中;(1次计算,1次访存);(注意,变址可变,但形式地址不变,通常用于遍历数组);

2.9 相对寻址
以pc寄存器作为基址寄存器,形式地址作为偏移量;

2.10 堆栈寻址
操作数存储在堆栈的栈顶中,其中栈底是低地址,栈顶是高地址(SP寄存器存储);

Push:入栈;把ACC累加器的数据压入栈顶(内存);
Pop:出栈:把栈顶元素出栈并存入ACC累加器;
 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值