操作碼 |
指令 |
說明 |
0F 6F /r |
MOVQ mm, mm/m64 |
將四字從 mm/m64 移到 mm。 |
0F 7F /r |
MOVQ mm/m64, mm |
將四字從 mm 移到 mm/m64。 |
F3 0F 7E |
MOVQ xmm1, xmm2/m64 |
將四字從 xmm2/mem64 移到 xmm1。 |
66 0F D6 |
MOVQ xmm2/m64, xmm1 |
將四字從 xmm1 移到 xmm2/mem64。 |
將四字從源運算元(第二個運算元)複製到目標運算元(第一個運算元)。源運算元與目標運算元可以是 MMX™ 技術暫存器、XMM 暫存器或 64 位記憶體位置。此指令可用於在兩個 MMX 暫存器之間、MMX 暫存器與 64 位記憶體位置之間、兩個 XMM 暫存器之間以及 XMM 暫存器與 64 位記憶體位置之間移動數據。此指令不能用於在記憶體位置之間傳輸數據。
源運算元是 XMM 暫存器時,移動低位四字;目標運算元是 XMM 暫存器時,四字儲存到暫存器的低位四字,高位四字則清除為全 0。
MOVQ instruction when operating on MMX registers and memory locations:
DEST SRC;
MOVQ instruction when source and destination operands are XMM registers:
DEST[63-0] SRC[63-0];
MOVQ instruction when source operand is XMM register and destination
operand is memory location:
DEST SRC[63-0];
MOVQ instruction when source operand is memory location and destination
operand is XMM register:
DEST[63-0] SRC;
DEST[127-64] 0000000000000000H;
無。
無。
#GP(0) - 如果目標運算元位於不可寫的段。如果記憶體運算元有效地址超出 CS、DS、ES、FS 或 GS 段限制。
#SS(0) - 如果記憶體運算元有效地址超出 SS 段限制。
#UD - 如果 CR0 中的 EM 設定為 1。(僅限 XMM 暫存器操作)。如果 CR4 中的 OSFXSR 是 0。(僅限 XMM 暫存器操作)。如果 CPUID 功能標誌 SSE-2 為 0。
#NM - 如果 CR0 中的 TS 設定為 1。
#MF(僅限 MMX 暫存器操作) - 如果存在未決的 FPU 異常。
#PF(錯誤程式碼) - 如果發生頁錯誤。
#AC(0) - 如果啟用對齊檢查並在目前特權級別為 3 時進行未對齊的記憶體引用。
#GP - 如果運算元的任何部分出現在 0 到 FFFFH 的有效地址空間之外。
#UD - 如果 CR0 中的 EM 設定為 1。(僅限 XMM 暫存器操作)。如果 CR4 中的 OSFXSR 是 0。(僅限 XMM 暫存器操作)。如果 CPUID 功能標誌 SSE-2 為 0。
#NM - 如果 CR0 中的 TS 設定為 1。
#MF(僅限 MMX 暫存器操作) - 如果存在未決的 FPU 異常。
與“實地址模式”中的異常相同
#PF(錯誤程式碼) - 如果發生頁錯誤。
#AC(0) - 如果在啟用對齊檢查的情況下進行未對齊的記憶體引用。