-2
A
回答
1
假設英特爾的語法,其中
MOV AX, EBX
如果允許的話,會EBX的內容複製到AX。
試試吧。正如我記得它不被支持。但是您可以複製任何16位組,例如
MOV AX, BX
然而,對於相反,延長位模式,像假想
MOV EBX, AX
如何做到這一點取決於你想要什麼。
如果AX代表一個無符號整數,只需清除EBX並複製到下半部分,例如,
XOR EBX, EBX
MOV BX, AX
然而,如果AX代表一個有符號整數(二進制補碼),你需要複製符號位遍及16點高位一路,這就是所謂符號擴展。
谷歌搜索中的「x86符號擴展」給我
MOVS EBX, AX
,但我還沒有嘗試過(也就是我還沒有嘗試過現在,但也許20年前,我不知道知道)。
總之,參考文檔和嘗試一下。
1
使用MOV AX,BX,向的BX的低16位移動到斧。
使用MOVSX EBX,斧移動斧到EBX帶符號擴展
使用MOVZX EBX,斧頭斧遷入EBX,歸零EBX的高16位。
0
相關問題
- 1. 從DX:AX寄存器移動到單個32位寄存器
- 2. 負載32位寄存器
- 3. 彙編,將一個8位寄存器移到一個16位寄存器,怎麼樣?
- 4. 在彙編程序中移動(移位)兩個寄存器
- 5. 32位寄存器作爲8位寄存器
- 6. 32位寄存器將64位分成兩個32位寄存器
- 7. MASM大會將8位寄存器移動到16位寄存器(即mov cx,ch)
- 8. 添加16位寄存器
- 9. 將兩個x86 32位寄存器存儲到128位xmm寄存器中
- 10. NASM - 如何將8位寄存器移動到完整的32位寄存器中?
- 11. XOR寄存器,寄存器(彙編)
- 12. 打印彙編寄存器的十六進制值,將16位寄存器移動到8位和其他彙編問題
- 13. ASCII和64位寄存器彙編
- 14. 移位寄存器Verilog
- 15. 32位架構的DS段寄存器
- 16. [MASM]另一個'不能使用32位地址的16位寄存器'錯誤
- 17. 移位寄存器爲std_logic_vector
- 18. ALU +移位寄存器
- 19. 交換2個寄存器8086彙編語言(16位)
- 20. 如何將8位地址移入x86程序集的16位寄存器?
- 21. 寄存器長度,內存大小和32/64位計算(MIPS)
- 22. 位運算使用移位寄存器
- 23. 在ARM Arch64寄存器中移動一個32位常數
- 24. 如何將兩個32位寄存器移動到一個64位?
- 25. Z3Py:我應該如何表示一些32位; 16位和8位寄存器?
- 26. LC3,將寄存器的值存儲到內存位置
- 27. 位屏蔽位寄存器
- 28. 如何做符號的反義擴展從一個16位寄存器到一個8位寄存器?
- 29. Verilog移位寄存器接口到AVR
- 30. 在x86_64的另一個寄存器中將寄存器內容移動到另一個寄存器中的內存地址
「mov ebx,ax?會發生什麼?」將是16 - > 32. – rcgldr
是否確定支持。 –
自386以來,已經支持movsx和movzx。 – rcgldr