鸿 网 互 联 www.68idc.cn

汇编语言中的七种寻址方式

来源:互联网 作者:佚名 时间:2015-08-13 07:37
汇编语言 中最头痛的莫过于寻址 方式 了,犹如C语言中的指针,还是记录如下吧。 七大寻址 方式 1.立即寻址 方式 :操作数在指令中给出 注意:只能用于SRC操作数,SRC与DST的字长一致 2.寄存器寻址 方式 :操作数在指定的寄存器中 注意:SRC与DST的字长必须一

汇编语言中最头痛的莫过于寻址方式了,犹如C语言中的指针,还是记录如下吧。

七大寻址方式

1.立即寻址方式:操作数在指令中给出

注意:只能用于SRC操作数,SRC与DST的字长一致

2.寄存器寻址方式:操作数在指定的寄存器中

注意:SRC与DST的字长必须一致,CS不能用MOV修改

(以下归纳为存储器寻址方式,地址从内存单元中取出)

3.直接寻址方式:有效地址EA由指令直接给出

通过给出来的地址得到具体值

注意:

a.隐含的段为数据段(DS)

b.可以使用段跨越前缀,如mov ax,es:[2000h]

c.操作数可由变量表示 如mov ax,word ptr value可以存放字节到字

4,寄存器间接寻址方式:EA在基址寄存器(BX/BP)或变址寄存器(SI/DI)中

注意:

a.不允许使用AX、CX、DX存放EA,例如:mov ax,[cx]是错误的

b.SRC与DST的字长必须一致

c.如果使用BP基址寄存器,则段为SS(堆载段)

5.寄存器相对寻址方式:在寄存器间接寻址方式上添加了一个8/16位的偏移量

注意:mov ax,count[si]=mov ax,[count+si]

6.基址变址寻址方式:基址+变址

注意:必须是一个基址寄存器与一个变址寄存器的组合

7.相对基址变址寻址方式:在基址变址寻址方式中添加一个8/16位的偏移量

注意:mov ax,mask[bx][si]=mov ax,mask[bx+si]=mov ax,[mask+bx+si]

 

 

网友评论
<