汇编语言中的寻址方式基本介绍:
与数据相关的寻址方式:
直接寻址方式(Direct addressing)
例如:
Mov ax, [2000H]
默认的情况下,数据段是DS,此时的的实际的传送的是:
16位总线的时候:将 ds<<4+2000h地址的值送到ax中
另外可以显示的指定数据段,例如:
Mov ax, es:2000h
Mov ax, es:[2000h]
寄存器间接寻址:
这种寻址方式通过基址寄存器BX、BP或变址寄存器SI、DI来保存操作数的有效地址。如果指令中使用的寄存器是SI、DI和BX,则操作数在数据段中;如果指令中使用的寄存器是BP,则操作数在堆栈段中 例如:
Mov AX, [BX] -----将DS:BX地址出的值送到AX中
Mov AX,[BP] ----- 将SS:BP地址中的值输送到AX中
同样也可以显示的指定段:例如:
Mov AX,ES:[BX] ------将ES:BX地址出的值送到AX中
寄存器相对寻址方式
通过基址寄存器BX、BP或变址寄存器SI、DI与一个位移量相加形成有效地址,计算物理地址的缺省段仍然是SI、