将寄存器内容移动到x86_64中另一个寄存器中的存储器地址

时间:2012-09-25 21:35:43

标签: c assembly clang

在clang中进行一些内联​​汇编(基本上通过使用各种引用来猜测我的方式)并且我试图将%rdi的内容移动到%rdx指向的地址。但是我的语法都不起作用,这个:

mov %rdi, ptr %rdx

给出:

error: expected relocatable expression

怎么了?在clang中内联汇编的语法是什么?感谢。

1 个答案:

答案 0 :(得分:4)

我不知道clang的汇编语法究竟是什么,但gcc / gas使用的AT& T语法是:

movq %rdi, (%rdx)

英特尔/微软汇编语法为:

mov qword ptr [rdx], rdi