Лексическая структура языка
Текст программы на языке Pascal представляет собой последовательность строк, состоящих из символов, образующих алфавит языка. Строки завершаются специальными управляющими символами, не входящими в алфавит (#10, #13). Максимальная длина строки 126 символов.
Алфавит языка включает:
· Буквы — латинские буквы от A до Z, причем большие и малые буквы не различаются, если не входят в строковые константы;
· Арабские цифры от 0 до9;
· 16-ричные цифры 0..9 и буквы A..F;
· Специальные символы . + – / * = : ‘ ; < > [ ] ( ) { } ^ $ # @ ;
· Составные символы, образующиеся из комбинаций специальных символов. В тексте программы их нельзя разделять пробелами: <> <= >= := .. и т.д.
· Пробел — разделитель в языке.
Из символов алфавита языка строятся базовые элементы программы:
§ Идентификаторы (имена) — служат для обозначения в программе переменных, констант, типов. Имя может состоять из букв, цифр, знаков подчеркивания, но начинаться должно с буквы. Длина его может любой, но при трансляции программы воспринимаются только первые 63 символа имени. Имена вводятся в программу посредством описаний.
§ Зарезервированные слова — имеют строго фиксированное написание, их нельзя использовать в качестве имен, вводимых программистом (array, and, begin, end, for, else, mod, nil, implementation, do и т.д.). К зарезервированным словам относятся служебные слова, операторы, имена встроенных функций, имена директив и т.д.
§ Знаки операций — формируются из одного или нескольких специальных символов для задания действий по преобразованию данных и вычислению значений. Под знаками операций понимаются как различные арифметические действия ( +, -, *, /, <>, <=, >=, @) так и арифметические и логические функции (DIV, MOD, NOT, AND, OR, XOR).
§ Множество знаков пунктуациискладывается из следующих символов:
{ }или (* *) — скобки комментария;
[ ] — выделение индексов массива и элементов массива;
( ) — выделение списков параметров, алгебраические скобки;
‘ — апостроф;
: — отделение переменной или типизированной константы от типа;
; — разделение операторов и объявлений;
= — отделение идентификатора типа от описания типа или типизированной константы от значения;
, — разделение элементов списка;
.. — разделение границ диапазона;
. — конец программы, отделение целой части от дробной, разделение полей записи;
$ — знак шестнадцатеричного числа или директивы компилятору;
# — признак кода числа.
Разделителями в программе служат пробелы, любые управляющие символы и комментарии.
Комментарий — любой текст в любом месте программы, заключенный в фигурные скобки {} или в круглые скобки со звездочкой (* *). Комментарий не изменяет смысл программы и на выполнение не влияет, используется для пояснения текста программы.
Некоторые символы, например &, %, буквы русского алфавита можно использовать только в символьных строках и комментариях.
Комментарий, в котором вслед за скобкой следует знак $, является директивой компилятору.
Директивы компилятору (ключи компиляции) тоже заключаются в фигурные скобки, но являются инструкциями компилятору, предписывающими тот или иной режим обработки программы. Директива компилятору состоит из знака $ и стоящей за ним буквы, определяющей конкретный режим, а также знаков + или – , которые указывают включить или выключить данный режим.