Операторы присваивания.
<левая часть>:: =<переменная>: =
<список левой части>::=< левая часть> | <список левой части> <левая
часть>
<оператор присваивания)::=<список левой части><арифметическое
выражение>
Нормальная форма Бэкуса позволяет ввести глубокую рекурсивность.
Язык Pascal, как и всякий язык - это система обозначений для передачи некоторого содержания. Он содержит в себе правила образования как простых выражений так и сложных. Выражениям языка (синтаксическим конструкциям), ставится в соответствие обозначенное ими содержание - их семантика (смысл). Семантика имени переменной - это участок памяти, состояние которого может изменяться. Семантика оператора - действия компьютера при выполнении оператора. Семантика определяет смысл элементов языка, для которых были даны синтаксические определения.
Правила, по которым выражениям языка ставится в соответствие содержание, образуют семантическую систему языка. Понимать язык - это значит уметь ставить в соответствии каждому выражению содержание. Компьютер «понимает» язык Pascal с помощью программы - транслятора (translator на английском означает «переводчик»), являющегося компонентом компилятора. Одна из функций компилятора состоит в обнаружении синтаксических ошибок при трансляции и выдачи информации программисту для исправления программы.
2.5.2. Синтаксические диаграммы.
Другой формальный метод наглядно представляет синтаксические конструкции языка с помощью синтаксических диаграмм. Этот метаязык использует два вида графических символов - прямоугольники с прямыми и округленными углами(в литературе их заменяют кругом или овалом).
В прямоугольники заключаются элементы языка, значение которых должно быть определено ( "нетерминальные" символы). В прямоугольниках с округленными углами (или кругах, овалах) размещаются терминальные (базовые) символы, значение которых в определении не нуждается.
Направление движения по диаграмме при раскрытии структуры понятия, записанного при входе в диаграмму, указывают стрелки.
Для получения правильных грамматических конструкции языка с помощью синтаксических диаграмм, нужно идти по путям, заданных стрелками, от одного прямоугольника к другому до тех пор, пока не встретится выход. Если предусмотрено более одного направления движения, то следует выбрать любое. При встрече ссылки к другой синтаксической диаграмме следует войти в эту диаграмму, пройти по ней, выйти из нее и возвратиться на старое место в первоначальной диаграмме. Если по пути движения встретилась точка, то это означает, что данный путь характерен только для языка Pascal и является расширением стандарта языка.
Ниже представлен ряд примеров синтаксических диаграмм.
Пример 2.8. Синтаксическая диаграмма понятия «идентификатор».
![]() |
Пример 2.9. Синтаксическая диаграмма для целых десятичных чисел.
![]() |
Пример 2.10. Синтаксическая диаграмма для записи действительного числа.
![]() |
![]() |
Дата добавления: 2015-01-13; просмотров: 1236;