lea:load effective address。一般译作地址传递指令。
看个例子:
leal -8(%ebp), %eax //取出ebp寄存器的值并减去8赋给eax寄存器,ebp-8 -> eax
//不进行间接寻址,直接把传送地址
作为对比看下一个指令:
movl -8(%ebp), %eax //取出ebp的值减去8,然后再读取(ebp-8)所指向的内存的内容,赋给eax ,(ebp-8)->eax
//进行了间接寻址取出变量值(内容)
lea:load effective address。一般译作地址传递指令。
看个例子:
leal -8(%ebp), %eax //取出ebp寄存器的值并减去8赋给eax寄存器,ebp-8 -> eax
//不进行间接寻址,直接把传送地址
作为对比看下一个指令:
movl -8(%ebp), %eax //取出ebp的值减去8,然后再读取(ebp-8)所指向的内存的内容,赋给eax ,(ebp-8)->eax
//进行了间接寻址取出变量值(内容)