Способ синтаксического описания
Каждое синтаксическое понятие в тексте сначала вводится неформально. Словесное обсуждение понятия, как правило, завершается так называемой синтаксической диаграммой, которая наглядно представляет структуру вводимого понятия.
Диаграмма составляется с помощью базовых (терминальных) символов языка и ссылок на другие диаграммы, соединенных стрелками. Любой путь, пройденный по диаграмме в направлении стрелок, приводит к синтаксически правильной конструкции.
В диаграммах терминальные символы будем записывать строчными буквами (или символами) и заключать в круги или овалы, а имена других диаграмм, используемых в данной, будем записывать таким шрифтом и заключать в рамки.
В качестве примера синтаксической диаграммы приведем определение понятия составной оператор.
составной оператор
® (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. Эти символы рассматриваются как ограничители идентификаторов, констант, чисел, зарезервированных слов. Несколько следующих друг за другом пробелов считаются одним пробелом (последнее не относится к строковым константам).