Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
_pascal01.doc
Скачиваний:
17
Добавлен:
02.04.2015
Размер:
386.56 Кб
Скачать

2. Синтаксис

Синтаксис описывает грамматику языка. Синтаксис – это правила, согласно которым можно формулировать текст на этом языке. Для описания таких правил будут использованы синтаксические (рельсовые) диаграммы. При этом следует различать 2 типа символов:

содержит некоторое синтаксическое понятие;

содержит символы, входящие в исходный текст.

Каждое понятие, заключенное в прямоугольник, требует, в свою очередь, некоторого определения. Например,

Оператор if:

Использованные для описания оператора if понятия «выражение» и «оператор» должны определяться в свою очередь другой синтаксической диаграммой, в то время как if, then и else непосредственно включаются в текст программы.

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

Программа на Паскале состоит из трех частей: заголовок программы, описательная часть (соглашения) и собственно программные операторы (исполняемая часть – список действий).

Описательная часть содержит описания всех данных, процедур и функций, используемых в программе. Исполняемая часть содержит операторы, которые обрабатывают данные.

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

Программа:

Заголовок программы:

Данные в Паскале представляются константами и переменными. Константа – это определенное на этапе написания программы значение, не изменяемое во время работы программы. Константа может быть представлена непосредственным значением или идентификатором. Переменная используется для хранения данных, изменяемых во время работы программы. Переменная должна быть представлена идентификатором.

Описания:

Операторы:

Раздел реализации содержит операторы, разделенные символом точки с запятой. Операторы выполняется по очереди в порядке следования в тексте программы.

3.1. Идентификаторы

Всем объектам описаний даются имена или идентификаторы. Большие и маленькие буквы в идентификаторе языка Паскаль не различаются. В имени значащими являются только первые 63 символа (т.е. если есть два длинных имени, у которых различия начинаются только с 64-го символа, то эти имена будут считаться одинаковыми). Именованный объект можно использовать только после того, как он был описан.

Имя:

Буква:

Цифра:

Существует ряд служебных (зарезервированных) слов, которые нельзя использовать в качестве имен:

and

asm

array

begin

case

const

constructor

destructor

div

do

downto

else

end

exports

file

for

function

goto

if

implementation

in

inherited

inline

interface

label

library

mod

nil

not

object

of

or

packed

procedure

program

record

repeat

set

shl

shr

string

then

to

type

unit

until

uses

var

while

with

xor

Кроме того, есть стандартные имена, имеющие некоторое навсегда определенное разработчиками языка значение, например, integer и real. Каждое неправильное использование служебного имени приводит к ошибке при компиляции. Каждое новое определение стандартного имени просто отменяет его первоначальное значение.

Правильные имена:

x1, x_2, alpha, Num_Students, dlina, constant

Неправильные имена:

1x (начинается с цифры) x 2 (содержит пробел) Num-Students (содержит дефис) var (является служебным словом)

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

Комментарий заключается в фигурные скобки или в круглые скобки со звездочкой. Текст комментария может содержать любые символы (но не должен начинаться с символа $), так как компилятор не проверяет этот текст.

{Это комментарий} (*Это тоже комментарий*)