ЛАБОРАТОРНАЯ РАБОТА №_17-18
Тема: РАЗРАБОТКА АЛГОРИТМОВ И ПРОГРАММ С ИСПОЛЬЗОВАНИЕМ ДИНАМИЧЕСКИХ МАССИВОВ.
Цель работы:Научить разрабатывать алгоритмы и программы с использованием динамических массивов; закрепить теоретические знания по теме.
Техническое обеспечение: ПЭВМ.
Программное обеспечение: ОС Windows, ИСР Turbo Pascal 7.0.
ОБЩИЕ СВЕДЕНИЯ
Раздел оперативной памяти, распределяемый статически, называется статической памятью; динамически распределяемый раздел называется динамической памятью (heap - область).
Использование динамической памяти позволяет создавать структуры данных переменного размера: списки, стеки, очереди и т.д.
Указатели - это величины, ссылочного типа. Указатель содержит адрес поля в динамической памяти, хранящего величину определенного типа. Сам указатель хранится в статической памяти.
Адрес величины – это номер байта поля памяти, в котором располагается величина. Размер поля однозначно определяется типом.
В указателе можно хранить адрес данных или программного кода, например, адрес точки входа в процедуру. Адрес занимает 4 байта и хранится в виде двух слов: сегмента и смещения.
Например:
Type massiv=array[1..100] of integer;
Var
P:pointer; {нетипизированный указатель}
P1,P2:^integer; {указатели на динамические величины целого типа}
P3:^real; {указатель на динамическую величину вещественного типа}
P4:^char; {указатель на динамическую величину символьного типа}
PM:^massiv; {указатель на динамический массив, тип которого задан в разделе type}