Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
выш.мат. методичка.DOC
Скачиваний:
32
Добавлен:
13.02.2015
Размер:
1.71 Mб
Скачать

4.1. Переменные

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

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

в разделе/объявления переменных программы;

в разделе объявления переменных подпрограммы;

в разделе объявления переменных модуля;

в заголовке подпрограммы.

Раздел объявления переменных начинается зарезервированным словом var, за которым следуют объявления конкретных переменных, состоящие из имени переменной (имен переменных, перечисленных через запятую, если они одного типа), двоеточия и типа переменной (переменных). Каждое объявление завершается точкой с запятой:

<список переменных 1>:<тип 1>;

<список переменных 2>:<тип 2>;

<список переменных N>:<тип N>

В разделе объявления переменных наряду с предопределенными типами можно использовать типы, объявленные перед этим в разделе объявления типов, а также новые, вводимые только для конкретных переменных.

В заголовке подпрограммы при определении переменных можно использовать лишь стандартные или ранее определенные типы.

Пример

type

Operat = (Plus, Minus, Mult, Divide);

var

X, Y, Z : Real; {предопределенный тип}

I, J, K: Integer; {предопределенный тип}

Operator: Ореrаt; {ранее определенный тип}

Digit: 0.. 9; {объявление нового типа}

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

Переменные» объявленные в подпрограмме, называются локальными т.к. до­ступны только этой подпрограмме, и размещаются в стековом сегменте. По умолчанию стековый сегмент имеет размер в 16384 байта, однако с помощью ключа компилятора {$М} его можно изменять от 1024 до 65520 байтов.

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

В Turbo Pascalможно использовать абсолютные переменные, располагаемые в определенной области памяти.

Абсолютные переменные снабжаются директивой аbsolute и указанием на мес­то размещения этой переменной. При этом возможны два варианта:

указание абсолютного адреса в оперативной памяти заданием через двое­точие адреса сегмента и смещения;

«привязка» переменной к адресу начала другой переменной.

Пример

var

Str: string[32]; {тип-строка}

StrLen: Byte absolute Str; {привязка к началу строки}

CrtMode: Вуte absolute $0040: $0049; {указание абсолютного адреса}

4.2 .Константы.

Константами называются параметры программы, значения которых не меняются в процессе ее выполнения.

В языке Паскаль возможно двоякое использование констант:

непосредственное использование значения константы;

использование идентификатора константы.

Задание констант идентификаторами осуществляется в разделе объявления констант, начинающемся зарезервированным словом const. В Turbo Pascal имеет­ся две разновидности констант, заданных идентификаторами:

обычные константы, тип которых определяется их значением;

типизированные константы, для которых в явном виде указывается их тип.

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

const

<имя константы 1> = < значение 1>;

<имя константы 2> = <значение 2>;

<имя константы N> = <значение N>;

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