Программно-методический комплекс для обучения процессу создания компиляторов
Рефераты >> Программирование и компьютеры >> Программно-методический комплекс для обучения процессу создания компиляторов

Продолжение таблицы 13

Шаги

Таблица кодов лексем

Имя в программе

Элемент грамматики БНФ

Результат сравнения

Формируемая таблица переходов

Выполненное действие

текущая позиция

следующая позиция

позиция

табл

код, специф

тип

имя

текущая конструкция

тип

табл

код

(для ТС)

строка

столбец

вносимое значение

строка

столбец

118

25

1

27

ТС

;

 

<assign>

       

9

5

 

9

1

конец конструкции

119

25

1

27

ТС

;

           

9

1

 

8

3

переход

120

25

1

27

ТС

;

 

<stmt>

       

8

3

 

8

1

конец конструкции

121

25

1

27

ТС

;

           

8

1

 

7

3

переход

122

25

1

27

ТС

;

;

<stmt-list>

–ТС

1

27

+

7

3

$1,27

7

4

 

123

26

1

4

ТС

END

 

<stmt-list>

       

7

4

 

7

1

конец конструкции

124

26

1

4

ТС

END

           

7

1

 

1

8

переход

125

26

1

4

ТС

END

END

<prog>

ТС

1

4

+

1

8

$1,4

1

9

 

126

27

1

30

ТС

.

.

<prog>

ТС

1

30

+

1

9

$1,30

1

10

 

127

                     

1

10

 

1

1

конец конструкции

128

                     

1

1

       

Таблица 14 – Формируемая таблица переходов

   

1

2

3

4

5

6

7

8

9

10

1

   

PROGRAM

$1,1

<prog-name>

@2,2

VAR

$1,2

<dec-list>

@3,2

BEGIN

$1,3

<stmt-list>

@7,2

END

$1,4

.

$1,30

 

2

<prog-name>

@1,4

prog1

$2,1

;

$1,27

             

3

<dec-list>

@1,6

<dec>

@4,2

;

$1,27

             

4

<dec>

@3,3

<id-list>

@5,2

:

$1,31

<type>

@6,2

           

5

<id-list>

@4,3

a

$2,2

,

$1,29

b

$2,3

,

$1,29

c

$2,4

       

6

<type>

@4,5

INTEGER

$1,5

               

7

<stmt-list>

@1,8

<stmt>

@8,2

;

$1,27

             

8

<stmt>

@7,3

<assign>

@9,2

               

9

<assign>

@8,3

a

$2,2

:=

$1,28

<exp>

@10,2

           

10

<exp>

@9,5

<term>

@11,2

+

$1,32

<term>

@13,2

           

11

<term>

@10,3

<factor>

@12,2

               

12

<factor>

@11,3

1

$3,1

               

13

<term>

@10,5

<factor>

@14,2

*

$1,34

<factor>

@15,2

           

14

<factor>

@13,3

b

$2,3

               

15

<factor>

@13,5

(

$1,35

<exp>

@16,2

)

$1,36

           

16

<exp>

@15,4

<term>

@17,2

$1,33

<term>

@19,2

           

17

<term>

@16,3

<factor>

@18,2

               

18

<factor>

@17,3

a

$2,2

               

19

<term>

@16,5

<factor>

@20,2

               

20

<factor>

@19,3

c

$2,4

               


Страница: