Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Asm для начинающих > Не могу построить .exe из asm


Автор: redrover 25.12.2010, 21:53
Здравствуйте, уважаемые форумчане.
По курсовому проекту мне необходимо написать транслятор языка PASCAL на языке C. 

После преобразования входной программы 
Код


var 
i,k:integer;
begin

i:=8;
k:=15;
writeln('i>0');
read(i);

end.


к внутреннему языку представления и прогонки через синтаксический анализ, вывел в файл польскую запись арифметических операций.
Затем попробовал построить генератор кода на ассемблере (заключительный этап). И вот какой фрагмент записывается для программы выше:
Код

MODEL    TINY
STACK 256    
DATASEG
int0 db 8.000000
int1 db 15.000000
int2 db 0.000000
str0 db 'i>0$'
str1 db '$'
CODESEG
start:
push '%s'
push str0
call scanf
exit:
mov ah,04Ch
mov al,0h 
int 21h
end start


Понятно, что входное приложение перекодировано неверно. 
Вопрос следующий: как должна выглядеть программа на asm для вышеобозначенного паскаль-кода?
И где можно прочитать что-либо нужное по теме? Знание ассемблера, как вы, должно быть, уже догадались, у меня нулевое. 
Заранее благодарю и буду рад любой помощи.

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