8086存储器对地址的寻址方式

地址寻址方式:

含义:程序转移地址的寻址方式,即找出程序的转移地址。转移地址可以在段内,也可以跨段。CPU在执行程序中,下一条要执行指令的地址(CS和IP中)。

段内直接寻址方式(CS×10H+EA):

注:CS内容不变,IP内容改变

当前IP内容加上指令给出的8位(短程转移)或16位(近程转移)位移量。这种寻址方式适用于条件转移指令和无条件转移指令,但条件转移指令只有8位位移量的短程转移。
例:JMP SHORT ALPHA. 设ALPHA=20H,开始执行该指令前,(CS)=1500H,(IP)=3200H,于是该指令在存储器中的起始地址为:15000H+3200H=18200H,而当前的有效地址EA=当前(IP)+ALPHA=3220H,则转移物理地址为:15000H+3220H=18220H。执行完这条指令后,CPU到存储单元地址为18220H中取指令。

段内间接寻址方式

注:CS内容不变,IP内容改变

程序的转移地址存放在寄存器或两个存储器单元中,指令执行时需要用寄存器或存储器单元的内容更新IP内容。例:JMP BX;JMP WORD PTR ADDR;JMP WORD PTR [BX+ARRY]

段间直接寻址方式

注:CS内容改变,IP内容改变

该寻址方式是在指令中直接给出16位的段地址和16位的偏移地址来更新CS和IP的内容。

段间间接寻址方式

注:CS内容改变,IP内容改变

这种寻址方式是由指令中给出的存储器寻址方式求出存放转移地址的四个连续存储单元的地址。指令操作是将存储器的前两个单元送给IP,后两个单元的内容送给CS。
例:JMP DWORD PTR DELTA[BX] (无条件转移指令,段间间接寻址方式)
设当前(CS)=1000H,(IP)=0100H,(DS)=2000H,(BX)=3000H,DELTA=0040H,(23040H)=00H,(23042H)=00H,(23043H)=30H,则间接存储地址按寄存器相对寻址为:(DS)左移4位+(BX)+DELTA=20000H+3000H+0040H=23040H ,于是,可得转移地址为:3000H:5000H,即转移物理地址为:PA=30000H+5000H=35000H。执行本指令后,CS的内容和IP的内容分别变成3000H和5000H,程序转移到存储单元35000H开始执行。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值