Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Средства описания языков.doc
Скачиваний:
1
Добавлен:
12.08.2019
Размер:
68.61 Кб
Скачать

1.2. Графический метаязык

Использование аналитического метаязыка приводит к необхо-

димости определения не только понятий самого алгоритмического

языка, но и использования большого числа вспомогательных поня-

тий. Это затрудняет поиск правила для конкретной конструкции

языка, а также требует дополнительного учета всех вспомогатель-

ных правил для данного понятия. Одним из путей устранения ука-

занного недостатка состоит в переходе к графическим метаязыкам

для описания синтаксиса, например к метаязыку синтаксических

диаграмм.

На этом метаязыке описание синтаксиса также, как и при

аналитическом задании, представляет собой совокупность опреде-

лений понятий алгоритмического языка. Однако каждому понятию

соответствует не правило, а синтаксическая диаграмма, которая

графически изображает структуру всех конструкций, являющихся

значениями определяемого понятия.

Отдельным элементом диаграммы может быть основной символ,

заключенный в круг или овал, или понятие языка, заключенное в

прямоугольник. Причем использование названия понятия означает

ссылку на соответствующую диаграмму, описывающую данное поня-

- 8 -

тие. Из каждого элемента выходит одна или несколько стрелок,

указывающих на те элементы, которые могут непосредственно сле-

довать за данным элементом. Аналогом левой части правила явля-

ется стрелка в левой верхней части диаграммы, помеченная назва-

нием определяемого понятия и не выходящая из какого-либо

элемента. Такая стрелка указывает вход в диаграмму. Конец син-

таксического определения обозначается стрелкой, не ведущей к

какому-либо элементу и указывающей на выход из диаграммы.

Существуют определенные правила чтения синтаксических ди-

аграмм, которые заключаются в следующем. Для построения пра-

вильных грамматических конструкций нужно передвигаться по пу-

тям, указанном стрелками, от одного элемента диаграммы к друго-

му до встречи выхода. Там, где предусмотрено более одного нап-

равления, можно выбрать любое. При появлении ссылки к другой

синтаксической диаграмме следует войти в эту новую диаграмму,

пройти по ней, выйти из нее и возратиться на старое место в

первоначальной диаграмме.

Таким образом, допустимыми значениями определяемого поня-

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

последовательности из элементов диаграммы, встречаемые на пу-

тях, ведущих в направлении стрелок от входа диаграммы к ее вы-

ходу.

1.3. Задачи порождения и распознавания конструкций языка

Набор синтаксических правил называют грамматикой языка.

Она может создаваться с целью порождения или распознавания пра-

вильных конструкций языка.

В рассмотренных выше примерах правила грамматики использо-

вались для порождения конкретных значений соответствующих поня-

тий языка. Необходимость порождения правильных кострукций

возникает на этапе записи алгоритма на данном языке. Граммати-

ку, используемую для этой цели, называют порождающей. При ана-

лизе программы компилятором решается обратная задача, заключаю-

щаяся в определении синтаксической правильности текста

программы, для чего используется распознающая грамматика. Таким

образом, грамматика может быть порождающей или распознающей.

.

- 9 -

Контрольные вопросы

1. Перечислите составляющие алгоритмического языка и дайте

их определения.

2. Что представляет собой описание синтаксиса алгоритмичес-

кого языка и в каких формах оно может быть выполнено?

3. Перечислите способы определения понятий алгоритмическо-

го языка.

4. Играет ли роль порядок альтернатив в правой части пра-

вила?

5.

6.

7.

8.

9.

10.

11.

12.

13.

14.

15.

16.

17.

18.

- 10 -

19.

20.

21.

22.

23.

24.

25.

26.

27.

28.

29.

30.