80x86汇编—寻址方式

本文详细解释了8086处理器中的不同寻址方式,如直数寻址、寄存器间接寻址、基址变址和比例变址,澄清了基址和段地址的概念,并指出相对寻址的易混淆点。

术语解释

  • EA:有效地址,通过段地址:偏移地址组合得到的Effect Address

  • 位移量:一般是常量和标号,比如某个数据段首地址是ARR标号,那我们就可以直接写标号ARR找到数据段首地址。

  • 基地址:BX、BP寄存器一般作为基地址

    很有意思的是,我一开始以为基地址段地址,因为我一直觉得段地址是老大,我们偏移地址才是小弟,所以我们都以他为基准就以为段地址是基地址了,但其实不是的,BX和BP可以作为基地址, 基地址的意思是在偏移地址中能够作为一个基准,比如你MOV了一个地址进BX里面,我们寻址的时候可以用上基地址寻址以BX为基准,不用修改它,然后使用变址寄存器来改变。(下面会提到变址)

  • 变址量:一般是SI、DI作为变址寄存器去改变地址值,就好像数组的下标一样。

  • 比例因子:这位就好笑了,其实就是乘一个数字,一般是1,2,4,8,因为计算机就是用这几个进制,而且比例因子出现是因为我们可以通过比例因子乘以变址寄存器跳着找地址。比如SI * 4就是希望每次SI改变的时候地址能够以4的倍数跳着寻址。

  • 细节:后面提到段地址其实我们寻址方式不涉及段地址,所以当时学的时候不清楚才导致我不理解基地址寻址连带后面的寻址方式也搞错了。
    其次,寻址中可以不写出段地址,但是需要的时候就要指明。(后面会详细解释什么时候需要特地指明)


上面没懂没关系,这里解释我也是学完了才补上的。

8086寻址方式

直数寻址

  • 立即数寻址
    MOV AX, DS:[0110H]
  • 标号寻址
    MOV AX, 标号,比如我们定义了一个叫做da
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

竹等寒

谢过道友支持,在下就却之不恭了

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值