操作碼 |
指令 |
說明 |
0F BE /r |
MOVSX r16,r/m8 |
帶符號擴充套件將位元組移到字 |
0F BE /r |
MOVSX r32,r/m8 |
帶符號擴充套件將位元組移到雙字 |
0F BF /r |
MOVSX r32,r/m16 |
帶符號擴充套件將字移到雙字 |
將源運算元(暫存器或記憶體位置)的內容複製到目標運算元(暫存器),並通過符號擴充套件將值擴充套件成 16 或 32 位(請參閱“IA-32 英特爾(R) 體系結構軟件開發人員手冊”第 1 卷的“圖 6-5”)。轉換后的值的大小取決於運算元大小屬性。
DEST SignExtend(SRC);
無。
#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(錯誤程式碼) - 如果發生頁錯誤。