Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовик по ТЯП.DOC
Скачиваний:
10
Добавлен:
01.05.2014
Размер:
240.13 Кб
Скачать

Подграмматика для переменных:

Нетерминалы:

VARt

переменная

t - синтезированный

VOt

переменная старого типа

t - синтезированный

VO`t,p

остаток переменной старого типа

t - синтезированный, p - унаследованный

ITt

имя типа

t - синтезированный

It

индекс

t - синтезированный

I`t,p

остаток индекса

t - синтезированный, p - унаследованный

EARt

арифметическая переменная

t - синтезированный

IPt

имя поля

t - синтезированный

VARq3 ® ( ITp1 ) VOq1 {преобразовать_тип}p2,q2

p2¬p1

q2,q3¬q1

VARp2 ® VOp1

p2¬p1

VOt2 ® idp1 VO`p2,t1

p2¬p1

t2¬t1

VO`p1,t4 ® [ Iq1 {ЭМ}p2,q2,r1 I`r2,t1 ] VO`t2,t3

r1,r2¬НОВЭЛТ

p2¬p1

q2¬q1

t2¬t1

t4¬t3

VO`p1,t2 ® . IPq1 {ПЗ}p2,q2,r1 VO`r2,t1

r1,r2¬НОВЭЛТ

p2¬p1

q2¬q1

t2¬t1

VO`p1,p2 ® e

p2¬p1

Ip2 ® EARp1

p2¬p1

I`p1,t2 ® , Iq1 {ЭМ}p2,q2,r1 I`r2,t1

r1,r2¬НОВЭЛТ

p2¬p1

q2¬q1

t2¬t1

I`p1,p2 ® e

p2¬p1

IPp2 ® idp1

p2¬p1

Операционные символы:

{преобразовать_тип}A1,А2

Генерируется триада ntype A1,A2

{ЭМ}А1,А2,R

R = номер триады EM A1,A2

{ПЗ}А1,А2,R

R = номер триады PZ A1,A2

Подграмматика для операторов:

Нетерминалы:

OP

оператор

OPN

непомеченный оператор

VARt

переменная

t - синтезированный

Et

выражение

t - синтезированный

DATt

данные для вывода

t - синтезированный

OPS

последовательность операторов

OPS`

остаток последовательности операторов

ELSt,p

остаток условного оператора

t - синтезированный, p - унаследованный

OP ® lblp1 : {метка:}p2 OPN

p2¬p1

OP ® OPN

OPN ® rid ( VARp1 ) {ввести}p2

p2¬p1

OPN ® wri ( DATq1 ) {вывести}q2

q2¬q1

OPN ® beg OPS end

OPN ® got lblp1 {БП}p2

p2¬p1

OPN ® if Eq1 the {УПЛ}q2,r1 OP {БП}t2 {метка}r2 ELSr1,t1

r1,r2¬НОВМЕТ

r3¬НОВМЕТ

q2¬q1

t2¬t1

OPN ® whi Ep1 {метка}r1 {УПЛ}p2,r4 do OP {БП}r2 {метка}r3

r1,r2¬НОВМЕТ

r3,r4¬НОВМЕТ

p2¬p1

OPN ® VARp1 := Eq1 {присвоить}p2,q2

p2¬p1

q2¬q1

OPN ® e

DATt2 ® strt1

t2¬t1

DATt2 ® VARt1

t2¬t1

OPS ® OP OPS`

OPS` ® ; OP OPS`

OPS` ® e

ELSp1,p3 ® els OP {метка}p2

p2,p3¬p1

ELSp1,p3 ® e {метка}p2

p2,p3¬p1

НОВМЕТ - процедура, которая выдает значение указателя на свободную позицию таблицы меток.

Операционные символы:

{метка:}А

По указанному имени A метки в таблице меток находится соответствующая позиция B, и

генерируется триада label B, _

{метка}A

Генерируется триада label А, _

{ввести}А

Генерируется триада input А, _

{вывести}А

Генерируется триада print А, _

{присвоить}A1,A2

Если типы А1 и А2 совпадают,

то генерируется триада = A1, A2

{БП}А

Генерируется триада jmp А, _

{УПЛ}А1,А2

Если тип А1 - boolean,

то генерируется триада jmpF А1, A2

Управляющая таблица LL1-анализатора для главной подграмматики:

===================================================================================

I I. !lab!; !con!typ!var!beg!end!lbl!= !+ !- !: !num!id !TYP!LI IOPS!EpsI

===================================================================================

I PRG I О ! З ! О ! З ! З ! З ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I RL I О ! З ! О ! З ! З ! З ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I OM2 I О ! О ! О ! З ! З ! З ! З ! О ! З ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I OM I О ! О ! О ! О ! О ! О ! О ! О ! З ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I RC I О ! О ! О ! З ! З ! З ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I OC2 I О ! О ! О ! О ! З ! З ! З ! О ! О ! О ! О ! О ! О ! О ! З ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I OC I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! З ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I CNS I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! З ! З ! О ! З ! З ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I CNN I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! З ! З ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I IC I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! З ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I RT I О ! О ! О ! О ! З ! З ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I OT2 I О ! О ! О ! О ! О ! З ! З ! О ! О ! О ! О ! О ! О ! О ! З ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I OT I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! З ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I IT I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! З ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I RV I О ! О ! О ! О ! О ! З ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I OV2 I О ! О ! О ! О ! О ! О ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! З I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I OV I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! З I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I RO I О ! О ! О ! О ! О ! О ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I . I В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I lab I О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I ; I О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I con I О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I typ I О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I var I О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I beg I О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I end I О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I lbl I О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I = I О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I + I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I - I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I : I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I num I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I id I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I TYP I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I LI I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В I О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I OPS I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I В ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---I

I - I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! Д I

===================================================================================

Управляющая таблица LL1-анализатора для подграмматики выражения:

=======================================================

I I= !> !< !+ !- !* !/ !( !) !cns!VAR!EpsI

=======================================================

I E I О ! О ! О ! З ! З ! О ! О ! З ! О ! З ! З ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I E2 I З ! З ! З ! О ! О ! О ! О ! О ! О ! О ! О ! З I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I EAR I О ! О ! О ! З ! З ! О ! О ! З ! О ! З ! З ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I T I О ! О ! О ! О ! О ! О ! О ! З ! О ! З ! З ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I T2 I З ! З ! З ! З ! З ! О ! О ! О ! З ! О ! О ! З I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I P I О ! О ! О ! О ! О ! О ! О ! З ! О ! З ! З ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I P2 I З ! З ! З ! З ! З ! З ! З ! О ! З ! О ! О ! З I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I F I О ! О ! О ! О ! О ! О ! О ! З ! О ! З ! З ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I = I В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I > I О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I < I О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I + I О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I - I О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I * I О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I / I О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I ( I О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I ) I О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I cns I О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I VAR I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---I

I - I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! Д I

=======================================================

Управляющая таблица LL1-анализатора для подграмматики описания типов:

===========================================================================

I Iint!rea!com!boo!.. !id !CNS!rec!end!; !arr![ !] !of !, !: !EpsI

===========================================================================

I TYP I З ! З ! З ! З ! О ! З ! З ! З ! О ! О ! З ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I TS I З ! З ! З ! З ! О ! З ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I TC I О ! О ! О ! О ! О ! О ! О ! З ! О ! О ! З ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I TDI I О ! О ! О ! О ! О ! О ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I TD2 I О ! О ! О ! О ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I TOP I О ! О ! О ! О ! О ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I IT I О ! О ! О ! О ! О ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I TZ I О ! О ! О ! О ! О ! О ! О ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I LP I О ! О ! О ! О ! О ! З ! О ! О ! З ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I LP2 I О ! О ! О ! О ! О ! О ! О ! О ! З ! З ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I SEC I О ! О ! О ! О ! О ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I LI I О ! О ! О ! О ! О ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I LI2 I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! З ! З ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I TM I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! З ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I TI I З ! З ! З ! З ! О ! З ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I TI2 I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! З ! О ! З ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I TK I О ! О ! О ! О ! О ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I int I В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I rea I О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I com I О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I boo I О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I .. I О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I id I О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I CNS I О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I rec I О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I end I О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I ; I О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I arr I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I [ I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I ] I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I of I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I , I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I : I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О I

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I

I - I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! Д I

===========================================================================

Управляющая таблица LL1-анализатора для подграмматики переменных:

===============================================

I I( !) ![ !] !. !, !id !IT !EA !EpsI

===============================================

I VAR I З ! О ! О ! О ! О ! О ! З ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---I

I VO I О ! О ! О ! О ! О ! О ! З ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---I

I VO2 I О ! О ! З ! О ! З ! О ! О ! О ! О ! З I

I-----I---+---+---+---+---+---+---+---+---+---I

I I I О ! О ! О ! О ! О ! О ! О ! О ! З ! О I

I-----I---+---+---+---+---+---+---+---+---+---I

I I2 I О ! О ! О ! З ! О ! З ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---I

I IP I О ! О ! О ! О ! О ! О ! З ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---I

I ( I В ! О ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---I

I ) I О ! В ! О ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---I

I [ I О ! О ! В ! О ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---I

I ] I О ! О ! О ! В ! О ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---I

I . I О ! О ! О ! О ! В ! О ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---I

I , I О ! О ! О ! О ! О ! В ! О ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---I

I id I О ! О ! О ! О ! О ! О ! В ! О ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---I

I IT I О ! О ! О ! О ! О ! О ! О ! В ! О ! О I

I-----I---+---+---+---+---+---+---+---+---+---I

I EA I О ! О ! О ! О ! О ! О ! О ! О ! В ! О I

I-----I---+---+---+---+---+---+---+---+---+---I

I - I О ! О ! О ! О ! О ! О ! О ! О ! О ! Д I

===============================================

Управляющая таблица LL1-анализатора для подграмматики операторов:

====================================================================================

I Ilbl!str!: !; !:= !( !) !rid!wri!beg!end!if !the!els!whi!do !VARIE !EpsII

====================================================================================

I OP I З ! О ! О ! З ! О ! О ! О ! З ! З ! З ! З ! З ! О ! О ! З ! О ! З I О ! З II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I OPN I О ! О ! О ! З ! О ! О ! О ! З ! З ! З ! З ! З ! О ! О ! З ! О ! З I О ! З II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I DAT I О ! З ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! З I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I OPS I З ! О ! О ! З ! О ! О ! О ! З ! З ! З ! З ! З ! О ! О ! З ! О ! З I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I OP2 I О ! О ! О ! З ! О ! О ! О ! О ! О ! О ! З ! О ! О ! О ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I ELS I О ! О ! О ! З ! О ! О ! О ! О ! О ! О ! З ! О ! О ! З ! О ! О ! О I О ! З II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I lbl I В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I str I О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I : I О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I ; I О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I := I О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I ( I О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I ) I О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I rid I О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I wri I О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I beg I О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I end I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I if I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I the I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I els I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I whi I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I do I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В ! О I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I VAR I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! В I О ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I E I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I В ! О II

I-----I---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---I---+---II

I - I О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О ! О I О ! Д II

====================================================================================

12

Соседние файлы в предмете Теория языков программирования