Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Asm: Общие вопросы > Косвенная адресация памяти, пишу транслятор


Автор: ahito1 29.4.2012, 20:37
Пишу упрощенный транслятор ассемблера на Java(язык реализации не важен).
 Мой транслятор должен обрабатывать обрабатывать программу следующего формата:Код ASM
 
Код

NAMESEG SEGMENT
...область команд
...
NAMEDATA    DB
DW
....область данных
....
NAMESEG   ENDS
END

 
Команды которые транслятор должен транслировать:
 MOV регистр, регистр
 MOV регистр, непосредственный операнд
 MOV регистр, ОП(косвенная адресация)
 MOV ОП(косвенная адресация), регистр
 OR регистр, регистр
 OR регистр, непосредственный операнд
 OR регистр, ОП(косвенная адресация)
 OR ОП(косвенная адресация), регистр
 IMUL (косвенная адресация)
 JG смещение
 RET

 Обработка директив - SEGMENT,END,ENDS,OFFSET,DB,DW

Вопрос: каким образом формировать объектный код (HEX) из того, что я считаю с файла?(я отдельно разбираю все метки, имена команд, операндов)
 и вопрос по косвенной адресации, можете привести примеры, 
 вот такого типа OR регистр, ОП(косвенная адресация)
 OR ОП(косвенная адресация), регистр

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)