关于mov,sub的问题
mov操作符,不是把第一个操作数存储到第二个操作数吗?那么为什么可以mov $0,%eax呢?
同理还有sub操作符,到底是第一个操作数减去第二个操作数并存在第一个操作数中;还是第二个操作数减去第一个操作数并存在第二个操作数中,还是两个都可以?
可以用sub %rax,%rcx为例解释吗?
本帖最后由 jackz007 于 2019-1-28 16:00 编辑
楼主说的是 AT&T 汇编语言,主要在 Linux 系统使用,在 Windows 下主要使用 Intel 汇编语言,二者的区别和联系可以参考以下链接:
https://www.cnblogs.com/xiaojianliu/articles/8733496.html
objdump 通过使用命令行选项 “-M intel”(不包括引号)可以指定按 Intel 汇编格式输出目标程序的反汇编代码,可以通过设置别名:
alias objdump 'objdump -M intel'
让 objdump 缺省就按 Intel 汇编格式输出目标程序的反汇编代码;
gdb 在启动后,通过输入“set disassembly-flavor intel” (不包括引号)指令指定按 Intel 汇编格式显示目标程序反汇编代码。当然,如果偏好 Intel 汇编,可以把此命令保存到 $HOME/.gdbinit,然后通过设置别名:
alias gdb 'gdb -n -x ~/.gdbinit'
这样,gdb 缺省就会按照 Intel 汇编格式显示目标程序反汇编代码了。 jackz007 发表于 2019-1-28 15:12
楼主说的是 AT&T 汇编语言,主要在 Linux 系统使用,在 Windows 下主要使用 Intel 汇编语言,二者的 ...
哦哦哦,好哒谢谢了
页:
[1]