小编gle*_*ker的帖子

在检索地址方面,MOV和LEA之间有什么区别

当我使用它们获取地址时,mov和lea之间究竟有什么区别?

假设我有一个程序从第5个字符开始打印出一个字符串,其代码如下所示:

section .text
    global _start
_start:
    mov edx, 0x06  ;the length of msg from its 5th char to the last is 6.
    lea ecx, [msg + 4]
    mov ebx, 1
    mov eax, 4
    int 0x80

section .data
msg db '1234567890'
Run Code Online (Sandbox Code Playgroud)

然后,如果我换lea ecx, [msg + 4]mov ecx, msg + 4,将它运行不同?

我试过两个,输出看起来是一样的.但是,我从这个链接中读到,LEA指令的目的是什么?,在第一个答案的评论部分,似乎有人声称有类似mov ecx, msg + 4无效的东西,但我没有看到它.有人能帮助我理解这个吗?提前致谢!

x86 assembly nasm

4
推荐指数
1
解决办法
1236
查看次数

标签 统计

assembly ×1

nasm ×1

x86 ×1