<I>::= '{'<Описание><Операция>'}'

-- Массив --

<Массив b>::= '<arr>''<Ид.>'' ''<Ч.>'{ЗРМ}<R3>{ФМБ}'</arr>'

<Массив c> ::= '<arr>''<Ид.>'' ''<Ч.>'{ЗРМ}<R3>{ФМЧ}'</arr>'

<R3>::= ' ''<Ч.>'{ЗРМ}<R3>

<R3>X14R11 ::= $

-- Элемент массива --

<Эл. мас.>T1 ::= '<marr>'<Ид.>X15' '<Ч.>Y7{ФСД}X16Y8P1P2<R4>X17P3P4{ФУТЗЭМ}X18P5T2'</marr>'

T1=T2;(X16,X17,X18)=X15;Y8=Y7;P1=0;P3=P2;P5=P4

<R4>X19P6P7 ::= ' '<Ч.>Y9{ФСД}X20Y10P8P9<R4>X21P10P11

(X20,X21)=X19;Y10=Y9;P8=P6;P10=P9;P7=P11

<R4>X22P12P13 ::= $

P13=P12

-- Описания --

<Описание>A8B8 ::= '<bool>'<Тип Bool>A9B9 '</bool>'';'<R5>A10B10

A9=A8;A10=B9;B8=B10

<Описание>A11B11 ::= '<char>'<Тип Char>A12B12 '</char>'';'<R5>A13B13

A12=A11;A13=B12;B11=B13

<R5>A14B14 ::= <Описание>A15B15

A15=A14;B14=B15

<R5>A16B16 ::= $

B16=A16

<Тип Bool>A17B17::= <Ид.>X23{ВПБ}A18B18X24<R6>A19B19

A18=A17;A19=B18;X24=X23;B17=B19

<Тип Bool>A20B20 ::= <Массив b>A21B21X25<R6>A22B22

A21=A20;A22=B21;B20=B22

<Тип Bool>A23B23 ::= '<ass>'<Класс Bool>A24B24'</ass>'<R6>A25B25

A24=A23;A25=B24;B23=B25

<Класс Bool>A26B26 ::= <Ид.>X26{ВПБ}A27B27X27' '<Константа>Z1{ЗТЗ}X28Z2

A27=A26;B26=B27;(X27,X28)=X26;Z2=Z1

<Класс Bool>A28B28 ::= <Массив b>A29B29X29<Иниц.мас.Bool>X30

A29=A28;B28=B29;X30=X29

<Иниц.мас.Bool>X31 ::= '<iarr>'<Константы>X32'</iarr>'

X32=X31

<Константы>X33 ::= <Константа>Z3{ЗТЗМБ}X34Z4P14P15<R7>X35P16

(X34,X35)=X33;Z4=Z3;P14=0;P16=P15

<R7>X36P17:= ' '<Константа>Z5{ЗТЗМБ}X37Z6P18P19<R7>X38P20

(X37,X38)=X36;Z6=Z5;P18=P17;P20=P19

<R7>X39P21 ::= $

<R6>A30B30 ::= ','<Тип Bool>A31B31

A31=A30;B30=B31

<R6>A32B32 ::= $

B32=A32

<Тип Char>A33B33::= <Ид.>X40{ВПЧ}A34B34X41<R8>A35B35

A34=A33;A35=B34;X41=X40;B33=B35

<Тип Char>A36B36 ::= <Массив c>A37B37X42<R8>A38B38

A37=A36;A38=B37;B36=B38

<Тип Char>A39B39 ::= '<ass>'<Класс Char>40B40'</ass>'<R8>A41B41

A40=A39;A41=B40;B39=B41

<Класс Char>A42B42 ::= <Ид.>X43{ВПЧ}A43B43X44' '<Символ>C1{ЗТЗ}X45C2

A43=A42;B42=B43;(X44,X45)=X43;C2=C1

<Класс Char>A44B44 ::= <Массив b>A45B45X46<Иниц.мас.Char>X47

A45=A44;B44=B45;X47=X46

<Иниц.мас.Char>X48 ::= '<iarr>'<Символы>X49'</iarr>'

X49=X48

<Символы>X50 ::= <Символ>C3{ЗТЗМЧ}X51C4P22P23<R9>X52P24

(X51,X52)=X50;C4=C3;P22=0;P24=P23

<R9>X53P25 ::= ' '<Символ>C5{ЗТЗМБ}X54C6P26P27<R9>X55P28

(X54,X55)=X53;C6=C5;P26=P25;P28=P27

<R9>X56P29 ::= $

<R8>A46B46 ::= ','<Тип Char>A47B47

A47=A46;B46=B47

<R8>A48B48 ::= $

B48=A48

-- Операции --

<Операция>A49B49 ::= '<ass>'<Оп1>T3' '<Лог.операция>A50B50T4{ФAT=}T5T6T7'</ass>';'<R10>A51B51

A50=A49;A51=B50;B49=B51;(T5,T7)=T3;T6=T4

<Оп1>T8 ::= <Ид.>X57{ФУТЗИ}X58T9

T8=T9;X58=X57

<Оп1>T10 ::= <Эл.мас.>T11

T10=T11

<Лог.операция>A52B52T12::= '<and>'<Оп2>A53B53T13' '<Оп2>A54B54T14{ФAT&}T15T16T17{УК}B55B56'</and>'

A53=A52;A54=B53;B52=B56;(T12,T17)=B54;T15=T13;T16=T14;B55=B54

<Лог.операция>A57B57T18::= '<or>'<Оп2>A58B58T19' '<Оп2>A59B59T20{ФATv}T21T22T23{УК}B60B61'</or>'

A58=A57;A59=B58;B57=B61;(T18,T23)=B59;T21=T19;T22=T20;B60=B59

<Лог.операция>A62B62T24 ::= '<not>'<Оп2>A63B63T25{ФАТ!}T26T27T28{УК}B64B65'</not>'

A63=A62;B64=B63;B62=B65;(T24,T28)=B63;T26=T25;T28=NULL

<Оп2>A66B66T29 ::= <Символ>C7

T29=C7;B66=A66

<Оп2>A67B67T30 ::= <Константа>Z7

T30=Z7;B67=A67

<Оп2>A68B68T31 ::= <Лог.операция>A69B69T32

A69=A68;B68=B69;T31=T32

<Оп2>A70B70T33 ::= <Ид.>X59{ФУТЗИ}X60T34

T33=T34;X60=X59;B70=A70

<Оп2>A71B71T35 ::= <Эл.мас.>T36

T35=T36;B71=A71

<R10>A72B72 ::= <Операция>A73B73

A73=A72;B72=B73

<R10>A74B74 ::= $

B74=A74

Соседние файлы в папке Курсовой проект по дисциплине Формальные грамматики, языки и автоматы