Лексическая структура языка

Текст программы на языке 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).

§ Множество знаков пунктуациискладывается из следующих символов:

{ }или (* *) — скобки комментария;

[ ] — выделение индексов массива и элементов массива;

( ) — выделение списков параметров, алгебраические скобки;

‘ — апостроф;

: — отделение переменной или типизированной константы от типа;

; — разделение операторов и объявлений;

= — отделение идентификатора типа от описания типа или типизированной константы от значения;

, — разделение элементов списка;

.. — разделение границ диапазона;

. — конец программы, отделение целой части от дробной, разделение полей записи;

$ — знак шестнадцатеричного числа или директивы компилятору;

# — признак кода числа.

Разделителями в программе служат пробелы, любые управляющие символы и комментарии.

Комментарий — любой текст в любом месте программы, заключенный в фигурные скобки {} или в круглые скобки со звездочкой (* *). Комментарий не изменяет смысл программы и на выполнение не влияет, используется для пояснения текста программы.

Некоторые символы, например &, %, буквы русского алфавита можно использовать только в символьных строках и комментариях.

Комментарий, в котором вслед за скобкой следует знак $, является директивой компилятору.

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