Алгоритмические языки и программирование. Аксенова Л.И - 26 стр.

UptoLike

26
Р - ссылочная переменная (указатель). Эта процедура создает новую
динамическую переменную Р^, отводит место для её хранения в ОП и
присваивает её адрес ссылочной переменной Р.
При этом динамической переменной отводится блок памяти,
соответствующий размеру типа, с которым объявлен указатель Р.
Если в ходе вычислительного процесса динамическая переменная
становится ненужной
, её следует удалить. Это осуществляется с помощью
процедуры:
Dispose(P);
Эта процедура уничтожает связь между ссылочной переменной Р и
значением, на которое она ссылается, тем самым, освобождая память,
занятую динамической переменной.
Кроме этих двух процедур модуль TP - System поддерживает следующие
стандартные процедуры и функции для работы с указателями и
динамическими переменными:
GetMem(P,Size);
- используется как и New(P) для размещения
динамических переменных. Эта процедура создаёт новую динамическую
переменную, отводит для неё в динамической области ОП участок, размером
в Size байт и присваивает адрес начала этого участка указателю Р. Значение
Size не должно превышать 65521 байт, а переменная Size в программе
должна иметь тип Word.
FreeMem(P,Size);- процедура, которая уничтожает динамическую
переменную, освобождая в ОП участок размером Size байт, начиная с адреса,
записанного в Р. Р - становится не определённым.
Mark(P); - процедура, которая запоминает состояние динамической
области ОП в указателе Р, для того, чтобы в дальнейшем все динамические
переменные, размещенные в ОП после выполнения Mark, могли быть
уничтожены с помощью процедуры Release.
Release(P); - уничтожает все
динамические переменные, размещенные в
ОП после указателя Р. Значение указателя Р формируется обычно с помощью
процедуры Mark.
Функция MaxAvail определяет размер в байтах наибольшего
непрерывного блока в динамической области ОП, где может быть размещена
(с помощью New или GetMem) динамическая переменная. Тип результата
этой функции: Longint.
Функция MemAvail определяет размер в байтах всей свободной
памяти в
динамической области ОП. Тип результата этой функции: Longint.
Функция Addr(X) - определяет адрес (указатель) объекта Х.
Р - ссылочная переменная (указатель). Эта процедура создает новую
динамическую переменную Р^, отводит место для её хранения в ОП и
присваивает её адрес ссылочной переменной Р.
   При этом динамической переменной отводится блок памяти,
соответствующий размеру типа, с которым объявлен указатель Р.
   Если в ходе вычислительного процесса динамическая переменная
становится ненужной, её следует удалить. Это осуществляется с помощью
процедуры:
    Dispose(P);
   Эта процедура уничтожает связь между ссылочной переменной Р и
значением, на которое она ссылается, тем самым, освобождая память,
занятую динамической переменной.
   Кроме этих двух процедур модуль TP - System поддерживает следующие
стандартные процедуры и функции для работы с указателями и
динамическими переменными:
   GetMem(P,Size); - используется как и New(P) для размещения
динамических переменных. Эта процедура создаёт новую динамическую
переменную, отводит для неё в динамической области ОП участок, размером
в Size байт и присваивает адрес начала этого участка указателю Р. Значение
Size не должно превышать 65521 байт, а переменная Size в программе
должна иметь тип Word.
  FreeMem(P,Size);- процедура, которая уничтожает динамическую
переменную, освобождая в ОП участок размером Size байт, начиная с адреса,
записанного в Р. Р - становится не определённым.
   Mark(P); - процедура, которая запоминает состояние динамической
области ОП в указателе Р, для того, чтобы в дальнейшем все динамические
переменные, размещенные в ОП после выполнения Mark, могли быть
уничтожены с помощью процедуры Release.
   Release(P); - уничтожает все динамические переменные, размещенные в
ОП после указателя Р. Значение указателя Р формируется обычно с помощью
процедуры Mark.
   Функция      MaxAvail      определяет размер в байтах наибольшего
непрерывного блока в динамической области ОП, где может быть размещена
(с помощью New или GetMem) динамическая переменная. Тип результата
этой функции: Longint.
   Функция MemAvail определяет размер в байтах всей свободной памяти в
динамической области ОП. Тип результата этой функции: Longint.
    Функция Addr(X) - определяет адрес (указатель) объекта Х.


                                    26