寻址方式:说明操作数所在地址的方法。
指令 = 操作码 + 操作数
汇编语言 = 助记符 + 符号或符号地址
数据存储采用 "高高低低" 的规则
1、立即数寻址:
mov ax,123H ; 源操作数为一个立即数
2、寄存器寻址:
mov ax,bx ; 两个操作数都为寄存器
3、直接寻址:
mov ax,[2854H] ; (AX)=(DS*16+2854H) 源操作数或者目的操作数为一个有效地址
mov ax,VAL ; <==> mov ax, [VAL]
4、寄存器间接寻址:
① DS:SI,DI,BX
② SS:BP
mov ax, [SI] ; 寄存器间接寻址 以寄存器为有效地址
mov ax, SI ; 直接寻址
5、寄存器相对寻址:
mov ax, [DI+1234H] ; (AX)=(DS*16+1234H) 以寄存器为有效地址,并在此基础上加一个偏移量
mov ax, [SI + 3] ; <==> mov ax, 3[SI]
6、基址加变址寻址:
mov ax, [BX][DI] ; (AX)=(DS*16+(BX)+(DI)) 在寄存器相对寻址基础上,再增加一个偏移量
mov ax, [BX][DI] ; <==> mov ax,[BX+DI]
7、相对基址加变址寻址:
mov ax, [BX+DI-2] ; (AX)=(DS*16 + (BX) + (DI) + FFFFE ) 在基址加变址寻址基础上,再增加一个偏移量
注:在指定8位或者16位偏移量时,采用补码形式表示: (-2)H ==>> (FFFFE)H.