地址传送指令
有3条
1)取有效地址指针LEA
2)将地址指针装入DS指令LDS
3)将地址指针装入ES指令LES
格式:LEA 寄存器,源操作数
LDS 寄存器,源操作数
LES 寄存器,源操作数
功能:LEA是将存放源操作数的16位偏移地址送到一个16位的通用寄存器;LDS是把员操作数有效地址所对应内存单元中的双字长的高字内容送入DS,低字内容送入指令所指定的寄存器;LES是把源操作数有效地址所对应内存单元中双字长的高字内容送入Es,低字内容送入指令所指定的寄存器
举例:
LEA AX,[DI + 1000];将DI+1000送入AX
LEA AX,[3721H] ;将3721h单元的地址偏移量(有效地址)送AX,指令执行后(AX) = 3721H
LDS SI,[2130H] ;执行此指令后,将2130H和2131H中的内容(偏移量)送入SI中,将2132H和2133H中的内容(段值)送到DS中,
LES DI,[SI] ;执行此指令后,若DS = 2000H,SI= 1000H则将21000H和21000H中的内容(偏移量)送到DI中,而将21002H和21003中的内容(段值)送到ES中
注意内容:
1)指令格式中的源操作数必须是存储器寻址方式
2)注意LEA指令与MOV指令区别。指令2完成后,AX= 3271H而指令MOV AX,[3271]AX值位DS:3271H内存单元的内容
3)LDS和LES指令源操作数有效地址所对应的双字长的高字内容一般位16位段地址,低字内容一般为16位偏移地址,这两条指令主要用来装入段地址和偏移地址