Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория языков программирования методов трансляции.-1.pdf
Скачиваний:
13
Добавлен:
05.02.2023
Размер:
1.36 Mб
Скачать

99

будет «,». Поэтому вносим R1 в пятую строку столбца, соответствующего знаку «^». Этим действием неадекватность снимается (табл. 5.4).

Таблица 5.4.

Состояние

S

IDLIST

ID

real

«,»

A

^

 

 

 

 

 

 

B

 

 

 

 

 

 

 

C

 

 

 

 

 

 

 

D

 

1

 

S5

S4

S2

 

S3

 

2

 

 

 

R4

3

R4

R4

R4

R4

R4

R4

4

R3

R3

R3

R3

R3

R3

R3

5

 

 

 

 

S6

S3

R1

6

 

 

 

 

 

R2

7

R2

R2

R2

R2

R2

R2

Аналогичным образом, рассмотрев предварительные символы, можно исключить из таблицы все лишние приведения. В результате таблица разбора приобретает вид табл. 5.5.

Таблица 5.5.

Состояние

S

IDLIST

ID

real

«,»

A

^

 

 

 

 

 

 

B

 

 

 

 

 

 

 

C

 

 

 

 

 

 

 

D

 

1

HALT

S5

S4

S2

 

S3

 

2

 

 

R4

R4

3

 

 

 

 

 

4

 

 

 

 

R3

 

R3

5

 

 

 

 

S6

S3

R1

6

 

 

 

 

R2

R2

7

 

 

 

 

 

5.4. Сравнение LL – и LR – методов разбора

Как LL - , так и LR – методы разбора имеют много достоинств. Оба метода – детерминированы и могут обнаруживать синтаксические ошибки на самом раннем этапе. LR – методы обладают тем преимуществом, что они применимы к более широкому классу грамматик и языков и преобразование грамматик в них обычно не требуется. Однако, для хорошо структурированной грамматики сам факт преобразования грамматики не вызывает каких-либо технических трудностей.