这两条指令是否执行相同的操作:
mov $0x80000000, %esp
mov $0x80000000, (%esp)
mov $0x80000000, 0(%esp)
此外,该指示的作用是什么:
mov (%eax), %eax
答案 0 :(得分:2)
1st:esp
= 0x80000000
第2和第3个:来自esp
= 0x80000000的地址的4个字节的内存。
Last:eax
=来自eax
的地址的4个字节的内存。
顺便说一句,l
后缀可能已丢失。我通常将这些指令视为movl
,这意味着移动 long 值(= 4个字节)。
查找(g)as或AT& T汇编语法教程。你不是第一个提出这类问题的人。