操作碼 |
指令 |
說明 |
34 ib |
XOR AL,imm8 |
對 AL 同 imm8 執行“異或”運算 |
35 iw |
XOR AX,imm16 |
對 AX 同 imm16 執行“異或”運算 |
35 id |
XOR EAX,imm32 |
對 EAX 同 imm32 執行“異或”運算 |
80 /6 ib |
XOR r/m8,imm8 |
對 r/m8 同 imm8 執行“異或”運算 |
81 /6 iw |
XOR r/m16,imm16 |
對 r/m16 同 imm16 執行“異或”運算 |
81 /6 id |
XOR r/m32,imm32 |
對 r/m32 同 imm32 執行“異或”運算 |
83 /6 ib |
XOR r/m16,imm8 |
對 r/m16 同 imm8(符號擴充套件)執行“異或”運算 |
83 /6 ib |
XOR r/m32,imm8 |
對 r/m32 同 imm8(符號擴充套件)執行“異或”運算 |
30 /r |
XOR r/m8,r8 |
對 r/m8 同 r8 執行“異或”運算 |
31 /r |
XOR r/m16,r16 |
對 r/m16 同 r16 執行“異或”運算 |
31 /r |
XOR r/m32,r32 |
對 r/m32 同 r32 執行“異或”運算 |
32 /r |
XOR r8,r/m8 |
對 r8 同 r/m8 執行“異或”運算 |
33 /r |
XOR r16,r/m16 |
對 r8 同 r/m8 執行“異或”運算 |
33 /r |
XOR r32,r/m32 |
對 r8 同 r/m8 執行“異或”運算 |
對目標(第一個)運算元與源(第二個)運算元執行逐位“異或”(XOR) 運算,結果儲存到目標運算元位置。源運算元可以是立即數、暫存器或記憶體位置;目標運算元可以是暫存器或記憶體位置。(不過,不能在一條指令中使用兩個記憶體運算元)。對於結果中的每個位,如果它在兩個運算元中對應的位不同,則設定為 1;如果對應的位相同,則設定為 0。
DEST DEST XOR SRC;
清除 OF 與 CF 標誌,根據結果設定 SF、ZF 及 PF 標誌。AF 標誌的狀態未定義。
#GP(0) - 如果目標運算元指向不可寫的段。如果記憶體運算元有效地址超出 CS、DS、ES、FS 或 GS 段限制。如果 DS、ES、FS 或 GS 暫存器包含空的段選擇器。
#SS(0) - 如果記憶體運算元有效地址超出 SS 段限制。
#PF(錯誤程式碼) - 如果發生頁錯誤。
#AC(0) - 如果在目前特權級別為 3 且啟用對齊檢查的情況下進行未對齊的記憶體引用。
#GP - 如果記憶體運算元有效地址超出 CS、DS、ES、FS 或 GS 段限制。
#SS - 如果記憶體運算元有效地址超出 SS 段限制。
#GP(0) - 如果記憶體運算元有效地址超出 CS、DS、ES、FS 或 GS 段限制。
#SS(0) - 如果記憶體運算元有效地址超出 SS 段限制。
#PF(錯誤程式碼) - 如果發生頁錯誤。
#AC(0) - 如果在啟用對齊檢查的情況下進行未對齊的記憶體引用。