Вопросы к экз

advertisement
Вопросы к экзамену по дисциплине
«Теория языков программирования и методы трансляции»,
гр. П91–П93, 2012/13 учебный год
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Цепочки символов и операции над ними. Необходимые понятия.
Понятие языка. Необходимые определения (конкатенация, эквивалентность,
замыкание Клини…). Способы задания языков; возможные проблемы.
Особенности языков программирования с точки зрения теории формальных
языков.
Понятие и формальное определение грамматики как способа задания языка.
Описание языка программирования посредством грамматик.
Способы задания грамматик (форма Бэкуса-Наура, запись с использованием
метасимволов, графическое представление).
Классификация грамматик и языков по Хомскому.
Вывод и выводимость цепочек символов. Понятие сентенциальной формы.
Деревья вывода цепочек языка, алгоритмы их построения.
Распознаватели формальных языков – общая схема, необходимые понятия
(такт, конфигурация, допустимость цепочек).
Виды распознавателей формальных языков и их классификация. Задача
разбора в теории формальных языков.
Регулярные множества и регулярные выражения – определение, свойства.
Решение уравнения с регулярными коэффициентами (РК), алгоритм
решения системы уравнений с РК.
Автоматные грамматики – определение, способ приведения регулярной
грамматики к автоматному виду.
Конечный автомат (КА) как формальная конструкция, задающая язык.
Способы задания КА, необходимые понятия (такт, конфигурация, ДКА,
НКА, полностью определенный КА).
Построение
ДКА,
эквивалентного
заданному
НКА.
Классы
эквивалентности, минимизация ДКА.
Эквивалентные способы задания регулярных языков. Свойства регулярных
языков, способ проверки языка на регулярность.
Эквивалентные способы задания КС-языков. Свойства КС-языков, способ
проверки принадлежности языка классу КС-языков.
Автоматы с магазинной памятью как распознаватели КС-языков;
необходимые определения (такт, конфигурация, функция перехода),
классификация автоматов.
Виды и цели преобразований грамматик, задающих язык. Приведенные
грамматики – определение, необходимые понятия.
Алгоритм преобразования грамматики к каноническому виду; алгоритмы
устранения бесплодных и недостижимых символов, пустых правил и
циклов.
1
20. Грамматика в нормальной форме Хомского (БНФ), преобразование
грамматики к виду БНФ.
21. Виды рекурсии в правилах грамматики. Алгоритм устранения левой
рекурсии.
22. Виды распознавателей КС-языков – общая характеристика. Краткое
описание возвратных методов анализа языка, их вычислительная
сложность.
23. Нисходящий распознаватель КС-языков с возвратами. Алгоритм
распознавателя с подбором альтернатив.
24. Восходящий распознаватель КС-языков с возвратами на основе алгоритма
«сдвиг-свертка».
25. Табличные распознаватели КС-языков – общая характеристика, алгоритм
Кока-Янгера-Касами.
26. Распознаватели КС-языков без возвратов – основная идея, виды
распознавателей.
27. Алгоритм нисходящего анализа текстов, работающий без возвратов. Метод
рекурсивного спуска.
28. Класс LL-грамматик; определение, свойства, ограничения.
29. Метод разбора без возвратов для LL-грамматик на примере класса LL(1).
30. Класс LR-грамматик; определение, свойства, ограничения.
31. Грамматики предшествования как основа восходящего распознавателя
языков и соответствующий алгоритм восходящего анализа текстов,
работающий без возвратов.
32. Трансляторы, компиляторы, интерпретаторы – основные определения,
общие черты и различия.
33. Схема работы компилятора, основные этапы компиляции. Краткая
характеристика основных фаз компиляции.
34. Работа с таблицами идентификаторов в процессе компиляции.
35. Лексический анализ как первый этап процесса компиляции.
36. Синтаксический анализ как основной этап стадии анализа. Внутреннее
представление программы, его формы.
37. Семантический анализ текста программы.
38. Генерация кода и приемы оптимизации.
39. Работа блока анализа и исправления ошибок в процессе компиляции.
40. Теория перевода. Способы выполнения перевода; этапы компиляции, на
которых применяется перевод. Выводимые пары цепочек и другие понятия,
необходимые при переводе.
41. Использование генераторов и распознавателей в теории перевода.
42. Схема синтаксически управляемого перевода – необходимые определения,
СУ-перевод.
43. Преобразователи на основе конечных автоматов и автоматов с магазинной
памятью; их применение для перевода.
2
Related documents
Download