И группы из трех символов

( <выр> )

В грамматике есть также несколько правил с одной левой частью и с правыми частями разного рода, например <оствыр> ‑> + <выр> <оствыр> ‑>

Эти ограничения не являются принципиальными. Так, правило типа

K -> L M №

можно было бы заменить на два правила K -> LQ и Q -> MN, терминальные символы в правой части —на нетерминалы (с едиственным правилом замены на соответствующие терминалы). Несколько правил с одной левой частью и разнородными правыми также можно свести к уже разобранному случаю: например,

K -> L M №

K -> P Q

K ->

Можно заменить на правила

K ‑> K1

K ‑> K2

K ‑> K3

K1 -> L M №

K2 -> P Q

K3 ->

Но мы не будем этого делать —а сразу же запишем то, что получится, если подставить описания процедур для новых терминальных символов в места их использования. Например, для правила

K -> L M №

Это дает процедуру

Procedure ReadK;

Begin

| ReadL;

| if b then begin ReadM; end;

| if b then begin ReadN; end;

End;

Для ее корректности надо, чтобы Посл(L) не пересекалось с Нач(MN) (которое равно Нач(M), если из M не выводится пустое слово, и равно объединению Нач(M) и Нач(N), если выводится), а также чтобы Посл(M) не пересекалось с Нач(N).

Аналогичным образом правила

K -> L M №

K -> P Q

K ->

Приводят к процедуре

Procedure ReadK;

Begin

| if (Next принадлежит Нач(LMN)) then begin

| | ReadB;

| | if b then begin ReadM; end;

| | if b then begin ReadN; end;

| end else if (Next принадлежит Нач(PQ)) then begin

| | ReadP;

| | if b then begin ReadQ; end;

| end else begin

| | b := true;

| end;

End;

Читая приведенную далее программу, полезно иметь в виду соответствие между русскими и английскими словами:








Дата добавления: 2015-10-05; просмотров: 621;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.008 сек.