Реферат: Разработка системного программного обеспечения
Любой язык, назовём его G <Z> в независимости от его классификации и функционального назначения содержит следующие базисные элементы: G <Z> ={ Vt, Vn, Z, P }, где:
Vt - словарь терминальных символов
Vn - словарь нетерминальных символов
Z - начальный нетерминальный символ
P - множество правил вывода
Для языка G <Оператор> имеем следующие множества:
Vt ={ 0, 1, 2, ... , 9 ; a, b, c, d, ... ,z ; A, B, C, ..., Z; <, >, = };
Vn ={«Оператор», «УслВыр», «Терм», «Операнд», «Функция», «Идентификатор», «Скобки», «Целое» };
Z = { «Оператор» };
P = {
1. < Оператор > - IF ( < УслВыр > ) < Функция > [ ELSE < Функция > ]
2. < УслВыр > - T | T < T | T > T | T = T
3. < Операнд > - «Идентификатор» | «ЦБЗ»
4. < Функция > - < Идентификатор > (< Список параметров >);
5. < Список параметров > - < Параметр > | W
6. < Параметр > - «Идентификатор» | «ЦБЗ» | W
7. < Идентификатор > - Б { Б | Ц }
}
Классификация G[Z]
1. < Оператор > - IF ( < УслВыр > ) < Функция > [ ELSE < Функция > ]
2. < УслВыр > - T | T < T | T > T | T = T
3. < Операнд > - «Идентификатор» | «ЦБЗ»
4. < Функция > - < Идентификатор > (< Список параметров >);
5. < Список параметров > - < Параметр > | W
6. < Параметр > - «Идентификатор» | «ЦБЗ» | W
7. < Идентификатор > - Б { Б | ЦБЗ }