Способ синтаксического описания

Каждое синтаксическое понятие в тексте сначала вводится неформально. Словесное обсуждение понятия, как правило, завершается так называемой синтаксической диаграммой, которая наглядно представляет структуру вводимого понятия.

Диаграмма составляется с помощью базовых (терминальных) символов языка и ссылок на другие диаграммы, соединенных стрелками. Любой путь, пройденный по диаграмме в направлении стрелок, приводит к синтаксически правильной конструкции.

В диаграммах терминальные символы будем записывать строчными буквами (или символами) и заключать в круги или овалы, а имена других диаграмм, используемых в данной, будем записывать таким шрифтом и заключать в рамки.

В качестве примера синтаксической диаграммы приведем определение понятия составной оператор.

 

составной оператор

 

® (Begin) ® [оператор] ® (end) ®

 

( i )

 

Данная диаграмма определяет составной оператор как конструкцию, начинающуюся с терминального символа (зарезервированного слова) begin, за которым идет последовательность конструкций оператор, разделенных символами «точка с запятой». Завершает всю конструкцию служебное слово end.

Синтаксические диаграммы для конструкций, упомянутых в данной диаграмме ( например, оператор в приведенном примере) могут быть введены ранее или в последующих разделах текста.

В целях сокращения материала для некоторых конструкций синтаксические диаграммы можно не приводить. Это касается, основном, очевидных понятий (буква, цифры, знаки операций и т.п.)

 

 

Алфавит, лексика,

Структура программы

 

Текст программы. Алфавит языка.

Текст программы на языке Turbo Pascal должен содержаться в дисковом файле стандартной для MS DOS структуры. Этот файл может быть сформирован любым доступным текстовым редактором (в частности, строенным редактором системы Turbo Pascal).

 

Текст Pascal-программы представляет собой последовательность строк, состоящих из символов, образующих алфавитязыка. Строки программы завершаются специальными управляющими символами, не входящими в алфавит. Максимальная длина строки составляет 126 символов.

 

Алфавит языка состоит из следующих символов:

Ø Заглавные и строчные латинские буквы и символ «подчерк»:

A, B, C …, x, y, z, _

Обратите внимание, что на языке Turbo Pascal символ «подчерк» считается буквой.

Буквыиспользуются для формирования идентификаторов и служебных слов.

Ø Десять арабских цифр от 0 до 9:

0, 1, 2, 3, 4, 5, 6, 7, 8, 9

Цифры используются для записи чисел и идентификаторов.

Ø Двадцать два специальных символа:

+ - * / + > < . , ; : & ‘ ( ) [ ]{ } # $ ^

К специальным символам также относятся следующие пары символов:

<> <= >= := (**) (..)

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

Символы (. и.) могут употребляться соответственно вместо [ и ].

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

Особое место в алфавите языка занимают пробелы, к которым относятся любые символы ???ASCIIв диапазоне кодов от 0 до 32. Эти символы рассматриваются как ограничители идентификаторов, констант, чисел, зарезервированных слов. Несколько следующих друг за другом пробелов считаются одним пробелом (последнее не относится к строковым константам).