C) Фрагмент работы а-преобразователя
ТАКТ 0
cостояние
S
входная
цепочка "main()" {"float"
x , y ; }
магазин
last=?
first=0
<PROGRAM>
выход
ТАКТ 1
cостояние
S
входная
цепочка main {"float"
x;y;}
магазин
0
?
‘}’
last1
first1
<MAIN_BLOCK>
‘{’
“main()”
выход
ТАКТ 2
cостояние
S
входная
цепочка {"float"
var;var=2;}
магазин
first=0
last=?
‘}’
?
0
<MAIN_BLOCK>
‘{’
выход
ТАКТ 3
cостояние
S
входная
цепочка "float" x;y;}
магазин
last=?
First=0
}
?
0
?
<MAIN_BLOCK>
выход
ТАКТ 4
cостояние
S
входная
цепочка "float" x,y;}
магазин
last=?
first=0
}
?
0
?
last=?
First=0
<DEF_VAR>
выход/’;
ТАКТ 5
cостояние
S
входная
цепочка "floatt" x,y;}
магазин
last=?
first=0
}
?
0
?
last=?
First=0
Last2
First2
<CONTINUE>
last1
first1
<VAR>
выход
Заключение
В
процессе работы над курсовым проектом
я овладел знаниями и навыками работы с
атрибутными грамматиками, произвел
лексический анализ и построил атрибутный
преобразователь (инструкции и функции
переходов .