- •Формальные языки и грамматики Введение
- •1. Предварительные обсуждения
- •2. Формальные грамматики
- •3. Классификация формальных грамматик
- •4. Система составляющих
- •5. Синтаксические диаграммы
- •6. Синтаксическое дерево
- •7. Алгоритмы обхода вершин дерева разбора.
- •7.1 Алгоритм обхода "сверху-вниз".
- •7.2 Алгоритм обхода "снизу-вверх".
- •8. Двоичное дерево
- •9. Свойства двоичного дерева
- •10. Грамматический разбор цепочек
- •10.1. Разбор цепочки "сверху-вниз".
- •10.2. Разбор цепочки "снизу-вверх".
- •11. Операции над языками
- •Заключение
- •Контрольные вопросы и задачи
- •Индивидуальное задание
- •Указатель обозначений
- •Предметный указатель
- •Список литературы
- •1. Предварительные обсуждения.................................................... 4
Указатель обозначений
a,b,c,... - терминальные символы;
A,B,C,... - нетерминальные символы;
J - начальный символ
, , , - цепочки символов;
- пустая цепочка;
< .. > - синтаксическая переменная;
" .. " - слово ( лексема ) языка;
VT = {...} - множество терминальных символов;
VN = { ... } - множество нетерминальных символов;
V* = { ... } - множество цепочек символов;
P = { ... } - множество синтаксических правил;
C - система составляющих цепочки ;
-"...состоит из...";
- "из ... выводимо ...";
:= - " ... присвоить значение ...";
G - грамматика языка;
L = { ... } - язык;
Предметный указатель
алгоритм, 40
- разбора "cверху-вниз", 40
- - "снизу-вверх", 41
алфавит, 4
анализ, 8
- синтаксический, 8
БНФ (Бэкуса нормальная форма), 5
вершина-исток, 30
вершина-сток, 30
вывод, 6
- левосторонний, 15
- правосторонний, 15
выражение, 40
- арифметическое, 37
голова цепочки, 24
грамматика, 9
- непосредственных составляющих, 16
- контекстно-свободная, 18
- регулярная, 20
- формальная, 9, 13
- Хомского типа 0, 15
- - типа 1, 16
- - типа 2, 18
- - типа 3, 20
дерево, 30
- двоичное, 43
- разбора, 30
- синтаксическое, 30
диаграмма синтаксическая, 26
конкатенация, 64
корень дерева, 30
крона дерева, 31
куст , 30
- концевой
лексема, 9, 26
лексика, 8
матрица связей
переменная синтаксическая, 4, 10
поддерево левое, 43
поддерево правое, 43
позвоночник двоичного дерева, 51
правила вывода, 13
- подстановки, 11
- - леволинейные, 20
- - праволинейные, 20
разбор грамматический, 40
ребро двоичного дерева, 43
символ, 13
- начальный, 13
- нетерминальный, 9
- терминальный, 9
синтаксис, 4, 5
скелет двоичного дерева, 51
слово, 4
структура, 30
таблица подстановок, 54
узел дерева, 30
цепочка символов, 4
фраза
хвост цепочки, 24
язык, 4, 8
- формальный, 8
Список литературы
1. Вайнгартен Ф. Трансляция языков программирования: / Пер. с англ.Л.В.Ухова / Под ред. Мартынюка . - М.: "Мир",1977 - 190с.
2. Глушков В.М., Цейтлин Г.Е., Ющенко Е.Л. Алгебра, языки, программирование. - Киев: "Наукова думка", 1974. - 328с.
3. Грис Д. Конструирование компиляторов для цифровых вычислительных машин: / Пер. с англ. Е.Б. Докшицкий и др. / Под ред. Ю.М. Баяковского и В. С. Штаркмана. - М.: "Мир", 1975 - 544с.
4. Кузин Л.Т. Основы кибернетики: в 2-х томах. Т. 2. Основы кибернетических моделей. Учеб. пособие для вузов. - М.: Энергия, 1979. - 584 с.
5. Кузнецов О.П. Адельсон-Вельский Г.М. Дискретная математика для инженера, 2-е издание, переработанное и дополненное. - М.: Энергоатомиздат, 1988 - 480с.
6. Математическая энциклопедия. Ред коллегия: И.М. Виноградов и др.. - М.: "Советская энциклопедия", !977.
7. Рейуорд-Смит. Теория формальных языков : / Пер. с англ. Б.А. Кузьмина / Под ред. И.Г.Шестакова. - М.: "Радио и связь", 1988. - 129с.
8. Энциклопедия кибернетики. - Киев: "Украинская советская энциклопедия", 1974.
С о д е р ж а н и е
Введение.................................................................................... 3
