汇编中看似微不足道的问题:我想将整个 XMM0 寄存器复制到 XMM3。我试过了
movdq xmm3, xmm0
但 MOVDQ 不能用于在两个 XMM 寄存器之间移动值。我该怎么办?
最佳答案
它是 movapd
、movaps
或 movdqa
movaps xmm3, xmm0
它们都做同样的事情,但有一个问题:
movapd
和movaps
在浮点域中运行。movdqa
在整数域中运行
根据您的数据类型使用适当的类型以避免域更改停顿。
此外,没有理由使用movapd
。始终使用 movaps 来代替,因为 movapd 需要额外的字节进行编码。
关于assembly - 如何在 XMM 寄存器之间移动 128 位值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8671438/