Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Сформулюйте алгоритм пошуку Follow k(Аi), АiÎ N.

Для граматики G={N, S, P, S} з схемою Р:

S ® a A B | e

A ® EA b | a

B ® b B | e

E ® B | e

 

де N={S, A, B, E}, S = {a, b}, знайти FOLLOW1(Ai), AiÎ N.

 

 

 

Решение задачи.

FIRST1(a)

  S A B E
F0 {e} {a} {e} {e}
F1 {e, a} {a} {e, b} {e}
F2 {e, a} {a} {e, b} {e, b}
F3 {e, a} {a, b} {e, b} {e, b}
F4 {e, a} {a, b} {e, b} {e, b}

 

 

  S A B E
s0(S,Ai) {e} ­– ­–
s1(S,Ai) {e} {e, b} {e}
s2(S,Ai) {e} {e, b} {e} {a, b}
s3(S,Ai) {e} {e, b} {e,a, b} {a, b}
s4(S,Ai) {e} {e, b} {e,a, b} {a, b}

 

FOLLOW1(a)=s4(S, a) " a Î {S, A, B, E}

 

СП 17. Сформулюйте алгоритм побудови таблиці М(a,b) управління для LL(1)-синтаксичного аналізатора.

Для граматики G={N, S, P, S} з схемою Р:

S ® a A B c | e

A ® EA b | b

B ® b B | e

E ® a E | с

де N={S, A, B, E}, S = {a, b, c}, побудуйте таблицю управління для LL(1)-синтаксичного аналізатора.

 

Матрица управления представляет собой таблицу M(a,b) где a Î NÈSÈ{e}, b Î SÈ{e}

M(a,b) =

  1. a=A, A Î N номер правила A®v такого что b Î FIRST1(v)Å1FOLLOW1(A);
  2. a=b, b Î S M(b,b) =”вытолкнуть”;
  3. a=e, M(e,e) = “допустить”.

Решение задачи.

FIRST1(a)

  S A B E
F0 {e} {b} {e} {c}
F1 {e, a} {b, c} {e, b} {a, c}
F2 {e, a} {a, b, c} {e, b} {a, c}
F3 {e, a} {a, b, c} {e, b} {a, c}

 

FOLLOW1(a)

  S A B E
s0(S,Ai) {e} ­– ­–
s1(S,Ai) {e} {b, c} {c}
s2(S,Ai) {e} {b, c} {e, c} {a, b, c}
s3(S,Ai) {e} {b, c} {e, c} {e, a, b, c}
s4(S,Ai) {e} {b, c} {e, c} {e, a, b, c}

 

 

1. S ® a A B c

2. S ® e

3. A ® EA b

4. A ® b

5. B ® b B

6. B ® e

7. E ® a E

8. E ® с

 

  A b c e
S        
A        
B        
E        
a ”вытолкнуть”      
b   ”вытолкнуть”    
c     ”вытолкнуть”  
e       “допустить”

 


 

Задача ТО-1


 


 




Дата добавления: 2015-09-12; просмотров: 20 | Поможем написать вашу работу | Нарушение авторских прав

Задача БД-5 | Задача БД-14 | Задача ШІ-2 | Задача ОГ-1 | Задача ОГ-2 | Задача ОГ-4 | Сформулюйте алгоритм пошуку недосяжних станів в скінченому автоматі. | Решение. | Сформулюйте алгоритм пошуку e-нетерміналів для КВ-граматики. |


lektsii.net - Лекции.Нет - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав