- •Входные языки сапр и
- •Предисловие
- •1. Языки формулировки задания
- •1.1. Функции. Программ перевода.
- •Общие требования к языкам формулировки задания.
- •1.1.2. Требования к языкам формулировки задания с точки зрения их использования.
- •1.2.Лексический и синтаксический анализ.
- •1.3.Проверка контекста и порождение сценария.
- •2.Теория формальных языков.
- •2.1. Порождающие грамматики
- •2.2. Иерархия распознающих автоматов
- •3. Синтаксис языков программирования.
- •3.1. Основные характеристики языков.
- •3.2. Нормальные формы Бекуса
- •3.3. Определение и общие свойства порождающих грамматик
- •3.4. Контекстно-свободные грамматики
- •3.4.1. Определение дерева вывода.
- •3.4.2. Алгоритм получения скобочной записи синтаксического дерева вывода.
- •3.4.3. Операции над бинарными отношениями.
- •3.5. Автоматные грамматики.
- •3.6. Методы распознавания и анализа языков.
- •3.6.1. Машина Тьюринга как распознающее устройство.
- •3.6.2. Автоматы и преобразователи с магазинной памятью.
- •3.7. Построение анализаторов кс-языков по порождающим грамматикам.
- •3.7.1. Анализаторы предшествования.
- •3.7.2. Lr(k)-анализатор
- •3.7.3. Глобальный анализатор
- •3.8. Контекстные условия языков программирования
Государственное образовательное учреждение высшего профессионального образования «Ковровская государственная технологическая академия
имени В. А. Дегтярева»
Входные языки сапр и
элементы теории формальных языков
Учебное пособие по дисциплинам «Лингвистическое и программное обеспечение САПР» и «Математическая логика и теория алгоритмов» специальности «Системы автоматизированного проектирования»
Федеральное агентство по образованию
Государственное образовательное учреждение высшего профессионального образования «Ковровская государственная технологическая академия
имени В. А. Дегтярева»
Рогов В.П.
Входные языки САПР и
элементы теории формальных языков
Учебное пособие по дисциплинам «Лингвистическое и программное обеспечение САПР» и «Математическая логика и теория алгоритмов» специальности «Системы автоматизированного проектирования»
Ковров 2011
УДК
Рогов В.П. Входные языки САПР и элементы теории формальных языков – Ковров: КГТА, 2011. - с.
Учебное пособие предназначено для самостоятельной работы студентов (подготовка к лекциям, курсовому проекту и госэкзамену) по дисциплинам «Лингвистическое и программное обеспечение САПР» и «Математическая логика и теория алгоритмов» студентами специальности «Системы автоматизированного проектирования» очной и заочной форм обучения и бакалаврами по профилю «Системы автоматизированного проектирования направления «Информатика и вычислительная техника» очной и очно-заочной форм обучения. В нем изложен теоретический материал и приведены примеры упражнений выносимых на экзамен.
Табл. . Ил. .Библиогр.: назв.
Рецензент: д.т.н., профессор,
Печатается по решению редакционно-издательского совета КГТА.
ГОУ ВПО КГТА, 2011
Предисловие
В методическом пособии кратко изложены основные понятия, связанные с входными языками САПР и теорией формальных языков. Для сокращения объема информации и упрощения изложения теоремы и леммы приводятся без доказательств. Для закрепления основных понятий теории в конце разделов приводятся упражнения.
1. Языки формулировки задания
1.1. Функции. Программ перевода.
Программы перевода из исходных текстов порождают результирующие тексты.
Работа таких программ осуществляется в два этапа:
анализ исходного текста, т.е. проверка того, является ли данный текст допустимым на языке формулировки задания и допустимо ли описываемое им задание;
синтез результирующего текста, т.е. построение сценария, описывающего процесс решения определенного исходным текстом задания.
Анализ исходного текста включает в себя:
лексический анализ;
синтаксический анализ;
контекстный анализ.
Лексический анализ служит для выделения лексем.
Лексема – минимальное несущее смысл объединение знаков.
Примерами лексем могут служить идентификатор, число, разделитель и др.
Во время лексического анализа лексемы заменяются кодами, что делает исходный текст короче.
Синтаксический анализ – это исследование структуры сжатого исходного текста.
В качестве результата получается структурное дерево (синтаксическое дерево), которое описывает иерархию образования синтаксических единиц из лексем.
При контекстном анализе проверяется корректность отношений между различными синтаксическими единицами, а также между элементами текста и базой сцен, где под базой сцен подразумевается совокупность возможных последовательностей вызова программных модулей.
Синтез результирующего текста включает в себя:
порождение сценария на основе полученной синтаксической структуры исходного текста и базы сцен;
оптимизация сценария в отношении запроса ресурсов, включающих сценарий средств для протоколирования и обработки аварийных ситуаций.
Рис. 1. Принципиальная схема перевода