ВУЗ:
Составители:
Рубрика:
206
12. УКАЗАТЕЛИ И ДИНАМИЧЕСКАЯ ПАМЯТЬ
Все переменные, объявленные в программе, размещаются в
оперативной памяти в непрерывном сегменте, размер которого не может
превышать 64 кБайт. Для размещения данных, требующих больший размер
памяти, или для данных, количество которых неизвестно заранее и может
модифицироваться в программе (массивы с динамическими размерами,
переменными) используется механизм управления
динамической памятью
(ДП).
ДП – это оперативная память компьютера, предоставляемая
программе за вычетом сегмента в 64 кБайта (для статических пере-
менных, стека 16 кБайт
) и соответственно кода тела программы.
Для управления ДП, с целью изменения ее размеров, используется
следующая директива компилятора:
{ $M,<стек>,<min ДП>,<max ДП> }
По умолчанию предполагается существование следующей
директивы:
{ $M,16384,0,655360 }
Для управления данными ДП в TURBO PASKAL существует гибкое
средство – указатели.
Указатель – это переменная, которая в качестве своего значения
содержит адрес некоторого байта памяти.
Адрес байта оперативной памяти задается совокупностью двух
16-разрядных слов, которые называются сегментом и смещением.
Cегмент – это участок оперативной памяти длиной в 64 кбайта,
который начинается с адреса, кратного 16.
Смещение – указывает, сколько байт от начала сегмента надо
пропустить, чтобы обратиться к нужному адресу. Вообще можно узнать
каждый адрес переменной с помощью операции
взятия адреса @.
Таким образом, по своей структуре любой указатель представляет
совокупность двух слов (данных типа WORD). С помощью указателя ДП
можно разместить данные любого типа. Для описания указателей
используются ссылочные типы.
Как правило, в TP указатель связывается с некоторым типом данных
(ссылочным типом), такой указатель называется типизированным.
Для объявления типизированного указателя используется
значок ^ и
имя типа.
Пример:
Страницы
- « первая
- ‹ предыдущая
- …
- 204
- 205
- 206
- 207
- 208
- …
- следующая ›
- последняя »