七种数据寻址方式
1、立即寻址方式:操作数作为指令的一部分而直接写在指令中
2、直接寻址方式:指令所要的操作数存放在内存中,在指令中直接给出该操作数的有效地址
3、寄存器寻址方式:指令所要的操作数已存储在某寄存器中,或把目标操作数存入寄存器。寄存器寻址方式是一种简单快捷的寻址方式,源和目的操作数都可以是寄存器。
4、寄存器间接寻址方式:操作数在存储器中,操作数的有效地址用SI、DI、BX和BP等四个寄存器之一来指定
5、寄存器相对寻址方式:操作数在存储器中,其有效地址是一个基址寄存器(BX、BP)或变址寄存器(SI、DI)的内容和指令中的8位/16位偏移量之和。
6、基址加变址寻址方式:操作数在存储器中,其有效地址是一个基址寄存器(BX、BP)和一个变址寄存器(SI、DI)的内容之和。
7、相对基址加变址寻址方式:操作数在存储器中,其有效地址是一个基址寄存器(BX、BP)的值、一个变址寄存器(SI、DI)的值和指令中的8位/16位偏移量之和
3种内存地址的寻址方式
(1)直接寻址
[idata] mov ax,ds:[000E]
(2)寄存器间接寻址
[bx] mov ax,[bx]
(3)各种变址寻址
[bx+si] ; [bx+di] mov ax,[bx+si]
[bx+si+idata] ; [bx+di+idata] mov ax,[bx+si+1]