我开始学习汇编(ASM x86)。我正在使用模拟器emu8086。我写了以下指令:
mov eax,3
当我试图模拟指令时,emu8086 写道:wrong parameters MOV eax,3. probably it's an undefined var: eax
此外,当我替换eax
为ax
,ah
或al
- 它工作得很好。
为什么会这样?我应该怎么做才能解决这个问题?谢谢。
emu8086 模拟原始的 8086。它是一个 16 位处理器,因此没有 32 位寄存器(eax、ebx 等)
有关寄存器布局的更多信息,请查看Intel 8086 上的维基百科页面。
db 66h
mov ax, 3
db 0, 0
mov eax, 3
应该在不支持它的汇编器中模拟(在 16 位代码中)。更容易使用的汇编程序...