
- •Вопрос 1. Предмет та.
- •Вопрос 2. Классификация автоматов
- •Вопрос 3. Приложения та
- •Вопрос 4. Двоичное умножение
- •Вопрос 5. Умножение в инверсных кодах
- •Вопрос 6. Деление
- •Вопрос 7. Деление в инверсных кодах. Особенности.
- •Вопрос 8. Особенности выполнения операций в формате с плавающей запятой.
- •Вопрос 9
- •Вопрос 10. Модель дискретного преобразователя Глушкова
- •Вопрос 11. Микропрограммирование
- •Вопрос 12. Структуры операционных автоматов
- •Вопрос 13. Синтез оа процедурного типа
- •Вопрос 14. Синтез оа структурного типа
- •Вопрос 15. Автоматные языки. Формальное задание Автомата.
- •Вопрос 16. Модели автоматов Мили и Мура
- •Вопрос 17. Эквивалентность ка. Теорема Мура.
- •Вопрос 18. Минимизация конечных автоматов.
- •Вопрос 19. Эквивалентность автомата Мили и Мура.
- •Вопрос 20. Виды уа
- •Вопрос 21. Структурные схемы уа. Мили и Мура.
- •Вопрос 22. Этапы синтеза уажл.
- •Вопрос 23. Примеры синтеза уажл.
- •Вопрос 24. Гонки и способы борьбы с ними
- •Вопрос 25. Уа с программируемой логикой (уапл)
- •Вопрос 26. Алгебраическая и структурная теория ка.
- •Вопрос 26 [part2]
- •Вопрос 27. Объединение нескольких уа в один
- •Вопрос 28. Программная реализация ка. Варианты реализации. Шаблон Состояние.
- •Вопрос 29. Назначение и краткая характеристика vhdl.
- •Вопрос 30. Реализация уа на vhdl.
- •Вопрос 31. Понятие о языке моделирования uml.
- •Вопрос 32. Понятие о языках и формальных грамматиках
- •Вопрос 33. Классификация языков
- •Регулярные языки и Конечные Автоматы
- •Вопрос 34. Лемма о накачке
- •Вопрос 35. Понятие о нка. Получение дка по нка.
- •Вопрос 36. Регулярные выражения. Синтаксические диаграммы. Теорема Клини.
- •Вопрос 37. Применение рв. Различные нотации рв.
- •Вопрос 38. Кс-грамматики и магазинные автоматы.
- •Вопрос 39. Машины Тьюринга
- •Вопрос 40. Использование мт для анализа алгоритмов.
Вопрос 36. Регулярные выражения. Синтаксические диаграммы. Теорема Клини.
Для
определения регулярных множеств
определим сначала 3 базовые операции
на этих множествах. Пусть
и
– множества цепочек. Операция объединения.
Операция
конкатенации.
.
Например,
,
,
К тому же, определим:
,
.
Операция
«Итерация».
.
Например,
,
.
Регулярные
множества над конечным словарем
определяются так:
1)
– регулярное множество. 2)
– регулярное множество. 3)
– регулярное множество. 4) Если S и T –
регулярные множества, то
– регулярные множества. 5) Если множество
не может быть построено по правилам
1–4, то это множество нерегулярное.
Регулярное множество описывает, в общем случае, бесконечные языки, а регулярные выражения представляют собой конечные формулы для описания бесконечных регулярных множеств.
РВ
задает шаблон получения цепочек РМ.
Как и синтаксические диаграммы, РВ
являются способом задания порождающей
грамматики языка. Операции в РВ имеют
приоритет (по убыванию):
,
,
.
Два РВ Р1 и Р2 называются эквивалентными
тогда и только тогда, когда эквивалентны
задаваемые ими РМ.
Для преобразования РВ используют соотношения-тождества, которые для них справедливы.
1. R + S = S + R 2. R + R = R 3. (R + S) + T = R + (S + T) 4. Ø + R = R 5. R • ε = ε • R = R 6. (R • S) • T = R • (S • T) 7. Ø • R = R • Ø = Ø 8. R • S ≠ S • R 9. R • (S + T) = R • S + R • T 10. (S + T) • R = S • R + T • R 11. R* = ε + R + R2 + R3 + … + RkR* 12. R • R* = R* • R 13. R+ = R + R2 + R3 + … 14. R+ + ε = R* 15. R* • R+ = R • R*
Синтаксические диаграммы
-это направленные графы с одним входным и одним выходным ребром, и помеченными вершинами
Вершины помечаются символами определенного алфавита. С помощью синтаксической диаграммы можно задавать автоматные языки:
- цепочка пометок на пути по графу от входа до выхода есть допустимая цепочка языка.
Синтаксическая диаграмма – одна из форм порождающей грамматики автоматных языков. СД тесно связаны с КА. По любой СД можно построить КА и наоборот.
В
общем случае СД соответствует НКА.
Допустимые
цепочки {aab,abcb,aacaab,abccabb,
….} Для получения А отмечаем состояния
на выходе каждой вершины, а также в
начале и в конце диаграммы.
Теорема: классы РМ и А языков совпадают.
Для доказательства необходимо доказать: 1. для любых КА можно получить соответствующее ему РВ 2. наоборот – по любому РВ можно получить соответствующий ему КА
Для получения КА рассмотрим граф переходов – это обобщение графа КА. Граф переходов - одна начальная и несколько конечных вершин, направленные рёбра графа помечены не символами, а регулярными выражениями. Граф переходов с одной начальной и одной конечной вершиной с одним ребром от начальной до конечной вершины, помеченной РВ R, допускает автоматный язык R^ (R – РВ, R^ - автоматный язык).
Вопрос 37. Применение рв. Различные нотации рв.
Применение регулярный выражений:
построение лексических анализаторов
обработка текста (поиск образцов и проверка)
Лексический анализатор предназначен для преобразования текста в набор лексем (минимизации структурных единиц языка). Они могут использоваться как сами по себе, так и как входной поток синтаксического анализа в составе транслятора языка.
Все распознаваемые лексическим анализатором конструкции описываются регулярной грамматикой и следовательно регулярными выражениями.
Регулярные выражения являются самыми компактными и распространёнными.
Они хорошо распознаются сами по себе. Можно строить автомат по заданным регулярным выражениям.