0
A
回答
4
你不說什麼處理器。 bl
至少在x86處理器中是一個8位寄存器,但不能用於尋址。
爲什麼它是無效指令?那麼,彙編指令無效的原因是給定的處理器沒有這樣的指令。沒有可能的方法來編碼這條指令。在這種情況下(假設爲x86),使用bl
或任何其他8位寄存器都不認爲有必要進行尋址。在16位代碼中,只能使用16位寄存器bx
,bp
,si
和di
進行存儲器尋址。 Wikipedia has a useful list of all possible addressing modes(請注意它使用英特爾語法,您的代碼採用AT & T語法)。
編輯:在AT & T語法信b
在movb
定義它具有一個8位操作數的交易。
爲了獲得更多或更少你的目標(使用bl
尋址),你可以做其中之一(這些在英特爾(YASM/NASM)語法,某些彙編想byte ptr
):
對於16-位代碼:
xor bh,bh
mov [bx], byte 0x0f
對於32位的代碼:
movzx ebx,bl
mov [ebx], byte 0x0f
對於64位的代碼:
movzx rbx,bl
mov [rbx], byte 0x0f
相關問題
- 1. C++代碼片段的彙編代碼
- 2. 彙編代碼是否跨平臺?
- 3. Inline PTX彙編代碼是否強大?
- 4. 不能編譯這個彙編代碼
- 5. 這段代碼是否是遞歸的?
- 6. 這段代碼等效
- 7. 是否有程序將x86代碼更改爲彙編代碼?
- 8. 彙編代碼
- 9. 這是否有效的reactJS代碼?
- 10. 這兩個代碼片段是否使用IQueryable和.AsParallel等效?
- 11. 無效「彙編」:嵌套的彙編
- 12. 是否有反彙編程序生成可編譯的彙編源代碼?
- 13. 這段代碼是否被釋放?
- 14. 硒Python:這段代碼是否正確?
- 15. 這段代碼是否線程安全?
- 16. 這段代碼是否定義良好?
- 17. 這段jQuery Ajax代碼是否正確?
- 18. 這段代碼是否安全 - PHP && MySQL
- 19. 這段代碼是否有VB.NET版本?
- 20. 這段代碼是否會返回false?
- 21. 如何擺脫這個彙編代碼?
- 22. ILSpy反編譯器的這一行代碼是否有效?
- 23. 彙編代碼中的分段錯誤
- 24. 彙編代碼中的段錯誤
- 25. 這2個彙編代碼段有什麼區別?
- 26. 這段代碼是如何得到有效的C#代碼的?
- 27. 什麼是這段代碼的payza等效php代碼?
- 28. 無效代碼片段
- 29. iOS彙編代碼
- 30. 彙編代碼MOVS
您可能在答案的一開始就表示*註冊*而不是*處理器* – zxcdw
@zxcdw當然可以。固定。 – nrz
這就是我的想法,但不確定。謝謝! – amorimluc