【发布时间】:2019-04-13 20:03:36
【问题描述】:
这些代码行应该做什么?
mov ebx, %1
mov ecx, %0
我知道 % 表示指针,但我需要更多解释。为什么是 %1 和 0 - 这些具体数字?
【问题讨论】:
-
这是c代码中的内联汇编吗?
-
是的,没错
-
这样的代码通常是内联汇编效率低下的标志。因为它是
ebx而不是%%ebx,所以这是-masm=intel语法,将操作数移动到 到 那些寄存器。而不是这样,只需告诉编译器您希望在这些寄存器中首先使用"c"(var0), "b"(var1)进行输入。见stackoverflow.com/tags/inline-assembly/info
标签: c gcc assembly x86 inline-assembly