Основы разработки трансляторов в САПР. Коробова И.Л - 35 стр.

UptoLike

а)
б)
в)
ЛА
1 проход
СА
2 проход
ГК
3 проход
ЛА
СА
1 проход
ГК
ЛА
СА
1 проход
ГК
2 проход
лексемы
ВП
ВП
лексемы
лексемы
ВП
Рис. 20
Промежуточное положение между описанными двумя вариантами занимает двухпроходный компиля-
тор (рис. 20, в). В этом случае синтаксический анализатор, вызывая лексический анализатор, получает
лексемы и строит файл во внутреннем представлении. Генератор кода считывает этот файл и создает
объектный код.
Варианты заданий
1. Разработать однопроходный транслятор с исходного языка на язык Фортран:
программа X;
переменные у,z: вещественные;
i: целые;
z=0;
цикл i от 1 до 10 выполнить
z=z*y;
вывод z;
конец.
2. Разработать двухпроходный транслятор с исходного языка на язык Фортран:
program EF:
var i,n: integer;
h: real;
begin
read(n);
h:=0;
for i:=n downto 1 do h:=h+1/i;
writeln(h)
end.
3. Разработать трехпроходный транслятор с исходного языка на язык ПЛ-1:
program g;
vаг u, v, max. min: real;
begin
read(u,v);
max:=10;
min:=0;
if u>v then