Реферат: Разработка системного программного обеспечения
В основе построения L заложены основные принципы языка, указанного в задании. Все допущения, усечения должны быть обоснованы и предварительно согласованы с учителем.
2. Подбор грамматики G[Z] по языку L
Построенный формальный язык L, подвергается декомпозиции, в процессе которой выявляются лексические составляющие - идентификаторы, константы и др. терминальные символы.
3. Классификация G[Z]
Для гарантии однозначности и безвозвратности разработанного языкового процессора выбранный язык отнести согласно класси-
фикации формальных грамматик, предложенных Хомским.
4. Выбор метода анализа
Проанализировать и выбрать наиболее подходящий анализ входного языка.
5. Диагностика и нейтрализация ошибок
Разработать алгоритм диагностики и нейтрализации ошибок.
6. Тестирование на программы на символьных цепочках
Протестировать разработанный языковой процессор на конкретных символьных цепочках.
7. Листинг
В конце отчета поместить распечатку программы с подробными коментариями.
Построение формального языка L
< Оператор > - IF ( < УслВыр > ) < Функция >;
[ ELSE < Функция >; ]
< Оператор > -- начальный нетерминальный символ
IF -- входной терминальный символ
ELSE -- входной терминальный символ (может и отсутствовать)
< УВ > -- условное выражение
< Функция > -отражает функциональную конструкцию языка Си
Пример правильного синтаксиса:
if ( a < b ) CallTheFunction( code1 ); else TheNextFunction( code2 );
a < b - есть условное выражение
«CallTheFunction» и «TheNextFunction» -- функции
code1 & code2 -- параметры функции
Подбор грамматики G[Z] по языку L