汇编语言——十种寻址方式

寻址方式 

1. 立即寻址方式 

直接给寄存器赋值

MOV AH, 80H

2. 寄存器寻址方式

源或者目的有一个是寄存器

(2.1) 源操作数是寄存器寻址方式

如:ADD VARD, EAX  ADD VARW, AX   MOV VARB, BH等。

其中:VARD、VARW和VARB是双字,字和字节类型的内存变量。

(2.2) 目的操作数是寄存器寻址方式

如:ADD BH, 78h    ADD AX, 1234h   MOV EBX, 12345678H等。

(2.3) 源和目的操作数都是寄存器寻址方式

如:MOV EAX, EBX   MOV AX, BX     MOV DH, BL等。

3. 直接寻址方式

地址值在括号里

MOV BX, [1234H] (默认使用DS)

MOV ES:[1000H], AX

4. 寄存器间接寻址方式

寄存器在括号里

MOV BX,[DI]

操作数的有效地址用SI、DI、BX和BP等四个寄存器之一来指定,称这种寻址方式为寄存器间接寻址方式。

若有效地址用SI、DI和BX来指定,则其缺省的段寄存器为DS;

若有效地址用BP来指定,则其缺省的段寄存器为SS(即:堆栈段)。

5. 寄存器相对寻址方式

一个寄存器和一个立即数在括号里,并且还要计算

MOV BX, [SI+100H]

6. 基址变址寻址方式

两个寄存器在括号里,并且要计算

MOV BX, [BX+SI]

7. 相对基址变址寻址方式

两个寄存器在括号里和一个立即数在括号里,并且要计算

MOV AX, [BX+SI+200H]

8.比例变址寻址方式

MOV EAX,COUNT[ESI*4]

9.基址比例变址寻址方式

MOV ECX,[EAX][EDX*8]

10.相对比例变址寻址方式

MOV EAX,TABLE[EBP][EDI*4]

常见问题 

汇编语言——偏移地址超过有效地址FFFFH

汇编语言中16位的最大寻址为什么为64KB

参考文章 

https://blog.csdn.net/qq_40627648/article/details/83960246


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部