Skip to content
/ LR_1 Public

Программная реализация LR(1) - разбора (C#)

Notifications You must be signed in to change notification settings

Druchik/LR_1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LR-1

Программная реализация LR(1) - разбора

Первоначальная грамматика языка

<S> - аксиома
<S>::= a<A>d|a<B>c
<A>::= b<A>|b
<B>::= <B>f|f

Преобразованная грамматика под LR(1)

  1. S::=1a2X3
  2. X::= 2A4d5
  3. X::= 2B6c7
  4. A::= 2,8b8A9
  5. A::= 2,8Λ2,8
  6. B::= 2,9f9B10
  7. B::= 2,9Λ 2,9

Λ - означает пустую строку

Таблица

S X A B a b c d f $
1 ДОПУСК ошибка ошибка ошибка Shift 2 ошибка ошибка ошибка ошибка ошибка
2 ошибка Shift 3 Shift 4 Shift 6 ошибка Shift 8 ошибка ошибка Shift 9 ошибка
3 ошибка ошибка ошибка ошибка ошибка ошибка ошибка ошибка ошибка Reduction 1
4 ошибка ошибка ошибка ошибка ошибка ошибка ошибка Shift 5 ошибка ошибка
5 ошибка ошибка ошибка ошибка ошибка ошибка ошибка ошибка ошибка Reduction 2
6 ошибка ошибка ошибка ошибка ошибка ошибка Shift 7 ошибка ошибка ошибка
7 ошибка ошибка ошибка ошибка ошибка ошибка ошибка ошибка ошибка Reduction 3
8 ошибка ошибка Shift 9 ошибка ошибка Shift 8 ошибка Reduction 5 ошибка Reduction 5
9 ошибка ошибка ошибка Shift 10 ошибка ошибка Reduction 7 Reduction 4 Shift 9 Reduction 4
10 ошибка ошибка ошибка ошибка ошибка ошибка Reduction 6 ошибка ошибка Reduction 6

About

Программная реализация LR(1) - разбора (C#)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages