我想找到一种方法将汇编代码汇编到我想要的操作码中,而不是汇编代码! (像gcc -O0这样的东西,但是用于组装)。我的理由涉及教学等等。
例如,AS喜欢将MOV r1,r2更改为ADD r1,r2,#0。
当我在寻找更快的代码但在需要正确的操作码时没有那么好的教学时,这一切都非常好。 我在Linux环境(ARM处理器)中使用AS和LD。有什么想法吗?
答案 0 :(得分:2)
从早期的ARM汇编语言到首选语法有一些语法更改。例如:STMFD sp!,reglist成为PUSH reglist。
以下是我发现的参考文献:http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0204j/Cjagjjbc.html
它还指出,参考Thumb指令:
"如果Rd和Rn都是Lo寄存器,则MOV Rd,Rn被反汇编为ADDS Rd,Rn,#0。"
这可能就是你所看到的。