Книга: Системное программное обеспечение. Лабораторный практикум
Примеры выполнения разбора предложений входного языка
Примеры выполнения разбора предложений входного языка
Рассмотрим примеры разбора цепочек входного языка в виде последовательности конфигураций МП-автомата, выполняющего разбор. Результат разбора будем представлять в виде последовательности номеров правил грамматики. На основе найденной последовательности правил после выполнения разбора при отсутствии ошибок (когда входная цепочка принята МП-автоматом) можно построить дерево синтаксического разбора.
Рассматриваемый МП-автомат имеет только одно состояние. Тогда для иллюстрации работы МП-автомата будем записывать каждую его конфигурацию в виде трех составляющих {?|?|?}, где:
• ? – непрочитанная часть входной цепочки;
• ? – содержимое стека МП-автомата;
• ? – последовательность номеров примененных правил.
В начальном состоянии вся входная цепочка не прочитана, стек автомата содержит только лексему типа «начало строки», последовательность номеров правил пуста.
Для удобства чтения стек МП-автомата будем заполнять в порядке справа налево, тогда находящимся на верхушке стека будет считаться крайний правый символ в цепочке ?.
- Построение множеств крайних правых и крайних левых символов
- Таблица 3.2. Множества крайних левых и крайних правых символов. Шаг 1
- Таблица 3.3. Множества крайних левых и крайних правых символов. Шаг 2
- Таблица 3.4. Множества крайних левых и крайних правых символов. Шаг 3
- Таблица 3.5. Множества крайних левых и крайних правых символов. Шаг 4 (результат)
- Построение множеств крайних правых и крайних левых терминальных символов
- Таблица 3.6. Множества крайних левых и крайних правых терминальных символов. Шаг 1
- Таблица 3.7. Множества крайних левых и крайних правых терминальных символов. Результат
- Заполнение матрицы предшествования
- Таблица 3.8. Матрица операторного предшествования
- Примеры выполнения разбора предложений входного языка
- Пример 1
- Пример 2
- Права для выполнения резервного копирования
- Упражнения для самостоятельного выполнения
- Примеры получения статистики
- Реализация языка SQL
- Дальнейшее развитие языка SQL
- Вам очень пригодится «Разработка ценностных предложений», если…
- 1.4.1. Кодирование во время выполнения
- Примеры
- 1. Оператор Select – базовый оператор языка структурированных запросов
- Основания для выполнения проекта
- Полиморфизм на этапе выполнения
- Запуск сценариев на удаленных машинах. Контроль за ходом выполнения таких сценариев