![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 28.12.2008
Сообщений: 134
|
![]()
я даже не знаю как это назвать правильно, у нас предмет называется "компиляторы". имеются две лекции, но по ним ничего не понятно.
две первых задачи сделала, но не знаю правильно или нет, осталась 3. Если кто то может объяснить как делать буду очень благодарна))) файл почему то не закачивается. ПК Задачи 3 Преобразование к нормальной форме Хомского (НФХ), алгоритм 2.12. 1. S → 0S1 | 01 2. S → aB | bA A → aS | bAA | a B → bS | aBB | b 3. Придумайте грамматику не в нормальной форме Хомского. Преобразуйте ее в НФХ. Устранение левой рекурсии, алгоритм 2.13. 1. S → Ab A → Aa 2. S → Ab A → Bd B → Sa | a 3. Придумайте грамматику, содержащую левую рекурсию глубины 2, 3. Устраните рекурсию. Преобразование к нормальной форме Грейбах, алгоритм 2.14. 1. S → AsB A → Ba B → b | aAA 2. S → Ba | Ab A → Sa | AAb | a B → Sb | BBa | b 3. Придумайте грамматику, не находящуюся в нормальной форме Грейбах и приведите ее к НФ Грейбах. Схема задачи, интегрирующей все преобразования (экзаменационного типа). Потренируйтесь, варьируя численные параметры задач. Для начала ni = 1 ~ 2. Придумайте грамматику, содержащую: 1. n1 правил с n2 символами в правой части, из которых n3 разных нетерминала и n4 разных терминала; 2. n5 разных ε – правил; 3. n6 разных цепных правил; 4. n7 леворекурсивных правил с глубиной рекурсии 2; 5. содержащую бесполезные символы обоих типов (1 - нетерминалы, из которых не выводятся терминальные цепочки, 2 - недостижимые символы); Выполнить: 1. Приведение. 2. Преобразование к нормальной форме Хомского. 3. Устранение левой рекурсии (можно применить преобразование к результатам приведения грамматики). 4. Преобразование к нормальной форме Грейбах для двух последних нетерминалов. Замечание. Если на очередном шаге исчезла работа для следующего шага, добавить к текущему результату правила, необходимые, чтобы она появилась для очередного шага. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
«Теория языков программирования и методы трансляции» | Garrykim | Помощь студентам | 20 | 05.10.2011 08:05 |
Теория языков программирования | Tesmont | Помощь студентам | 1 | 03.02.2011 13:40 |
Изучение языков программирования | Misik | Помощь студентам | 0 | 28.10.2010 23:08 |
Рейтинг языков программирования. | profi | Свободное общение | 18 | 21.03.2010 22:16 |
совмещение 2-х языков программирования | fis | Общие вопросы Delphi | 5 | 30.01.2007 20:13 |