LEA是微机8086/8088系列的一条指令,取自英语Load effective address——取有效地址,也就是取偏移地址。
LEA指令将存储器操作数mem的4位16进制偏移地址送到指定的寄存器。这里,源操作数必须是存储器操作数,目标操作数必须是16位通用寄存器。
因该寄存器常用来作为地址指针,故在此最好选用四个间址寄存器BX,BP,SI,DI之一。
扩展资料:
LEA指令常被用作运算求值,要比mov、add、sub等指令搭配快速。
LEA opera1, opera2的本来作用是取opera2的地址,然后把这个地址赋给opera1。
lea命令为加载有效地址(load dffective address) 和mov用法一样,指令并不是从制定的位置读入数据,而是将有效地址写入到目的操作数值中。
参考资料来源:百度百科-LEA指令
参考资料来源:百度百科-汇编语言
LEA指令的功能是将源操作数、即存储单元的有效地址(偏移地址)传送到目的操作数。
LEA有两个操作数:
1、左边是目的操作数,表示操作结果保存在此,该指令目的操作数只能是8个通用寄存器之一。
2、右边的是源操作数,该指令的源操作数只能是一个存储单元,表达存储单元有多种寻址方式。
示例:LEA BX,[BX+SI+0F54H]
[BX+SI+0F54H]采用相对基址变址的寻址方式表达存储单元,它表示的存储单元的有效地址是:BX内容加SI内容加0F54H,这个结果被传送到BX中。
扩展资料:
LEA指令常被用作运算求值,要比mov、add、sub等指令搭配快速。
LEA opera1, opera2的本来作用是取opera2的地址,然后把这个地址赋给opera1。
lea命令为加载有效地址(load dffective address) 和mov用法一样,指令并不是从制定的位置读入数据,而是将有效地址写入到目的操作数值中。
参考资料来源:
百度百科-LEA指令
百度百科-汇编语言 (面向机器的程序设计语言)
LEA指令的功能是将源操作数、即存储单元的有效地址(偏移地址)传送到目的操作数。
LEA有两个操作数。
左边是目的操作数,表示操作结果保存在此,该指令目的操作数只能是8个通用寄存器之一。
右边的是源操作数,该指令的源操作数只能是一个存储单元,表达存储单元有多种寻址方式。
示例:LEA BX,[BX+SI+0F54H]
[BX+SI+0F54H]采用相对基址变址的寻址方式表达存储单元,它表示的存储单元的有效地址是:BX内容加SI内容加0F54H。这个结果被传送到BX中。
LEA是取变量的地址
LEA另一用途就是代替乘法运算,比如LEA EAX,[EAX*4+EAX]就要比用MUL去实现EAX*5来得快捷
取地址中数值