Ошибка "Переместить неверные параметры"

Я начинаю изучать ассемблер (ASM x86). Я использую эмулятор emu8086. Я написал следующую инструкцию:

mov eax,3

Когда я пытаюсь эмулировать инструкцию, emu8086 пишет: wrong parameters MOV eax,3. probably it's an undefined var: eax

Кроме того, когда я заменил eax с ax, ah или же al - Работало просто отлично.

Почему это так? Что я должен сделать, чтобы решить эту проблему? Благодарю.

2 ответа

Решение

emu8086 эмулирует оригинальный 8086. Это 16-битный процессор, поэтому нет 32-битных регистров (eax, ebx и т. д.)

Для получения дополнительной информации о расположении регистров посетите страницу Википедии на Intel 8086.

db 66h
mov ax, 3
db 0, 0

Должен подражать mov eax, 3 (в 16-битном коде) в ассемблере, который его не поддерживает. Проще использовать ассемблер, который делает...

Другие вопросы по тегам