Форма Бэкуса-Наура (БНФ)

Способы описания языка

Этапы трансляции


 

 

 
 

 

 


 

Для описания синтаксиса языка наибольшее распространение получили:

§ Форма Бэкуса-Наура и его различные модификации

§ Синтаксические диаграммы Вирта

§ Формальные грамматики

В БНФ каждое определяемое понятие – это металингвистическая переменная.

Значением металингвистической переменной может быть любая конструкция из некоторого фиксированного для этого понятия набора конструкций.

Каждая металингвистическая форма определяется одну металингвистическую переменную и состоит из двух частей: слева – сама переменная, справа – все варианты определения конструкции, задаваемой этой формой. Варианты разделяются металингвистической связкой ‘|’ (или). Левая и правая части соединяются метасимволом :=, означающим «по определению есть».

Например, следующие металингвистические формы определяют множество целых чисел (символ ‘::=’ читается как «по определению есть»):

<целое число>::=<целое без знака> | +<целое без знака> | -<целое без знака>

<целое без знака>::=<цифра>|<целое без знака><цифра>

<цифра>::=0|1|2|3|4|5|6|7|8|9

Характерной особенностью многих металингвистических форм является наличие в них рекурсии.