Menu Home

Бесплатная техническая библиотека для любителей и профессионалов Бесплатная техническая библиотека


Информатика и информационные технологии. Абстрактные структуры данных (конспект лекций)

Конспекты лекций, шпаргалки

Справочник / Конспекты лекций, шпаргалки

Комментарии к статье Комментарии к статье

Оглавление (развернуть)

ЛЕКЦИЯ № 7. Динамическая память

1. Ссылочный тип данных. Динамическая память. Динамические переменные

Статической переменной (статически размещенной) называется описанная явным образом в программе переменная, обращение к ней осуществляется по имени. Место в памяти для размещения статических переменных определяется при компиляции программы. В отличие от таких статических переменных в программах, написанных на языке Pascal, могут быть созданы динамические переменные. Основное свойство динамических переменных заключается в том, что они создаются, и память для них выделяется во время выполнения программы.

Размещаются динамические переменные в динамической области памяти (heap-области). Динамическая переменная не указывается явно в описаниях переменных, и к ней нельзя обратиться по имени. Доступ к таким переменным осуществляется с помощью указателей и ссылок.

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

Зарезервированное слово nil обозначает константу со значением указателя, которая ни на что не указывает.

Приведем пример описания динамических переменных.

var p1, p2 : ^real;

p3, p4 : ^integer;

...

2. Работа с динамической памятью. Нетипизированные указатели

Процедуры и функции работы с динамической памятью

1. Процедура New(var p: Pointer).

Выделяет место в динамической области памяти для размещения динамической переменной рЛ, и ее адрес присваивает указателю р.

2. Процедура Dispose(varp: Pointer).

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

3. Процедура GetMem(varp: Pointer; size: Word).

Выделяет участок памяти в heap-области, присваивает адрес его начала указателю р, размер участка в байтах задается параметром size.

4. Процедура FreeMem(var p: Pointer; size: Word).

Освобождает участок памяти, адрес начала которого определен указателем р, а размер - параметром size. Значение указателя р становится неопределенным.

5. Процедура Mark(var p: Pointer)

Записывает в указатель р адрес начала участка свободной динамической памяти на момент ее вызова.

6. Процедура Release(var p: Pointer)

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

7. Функция MaxAvaikLongint

Возвращает длину в байтах самого длинного свободного участка динамической памяти.

8. Функция MemAvaikLongint

Возвращает полный объем свободной динамической памяти в байтах.

9. Вспомогательная функция SizeOf(X):Word

Возвращает объем в байтах, занимаемый X, причем X может быть либо именем переменной любого типа, либо именем типа.

Встроенный тип Pointer обозначает нетипизированный указатель, т. е. указатель, который не указывает ни на какой определенный тип. Переменные типа Pointer могут быть разыменованы: указание символа ^ после такой переменной вызывает появление ошибки.

Как и значение, обозначаемое словом nil, значения типа Pointer совместимы со всеми другими типами указателей.

Автор: Цветкова А.В.

<< Назад: Динамическая память (Ссылочный тип данных. Динамическая память. Динамические переменные. Работа с динамической памятью. Нетипизированные указатели)

>> Вперед: Древовидные структуры данных (Древовидные структуры данных. Операции над деревьями. Примеры реализации операций)

Рекомендуем интересные статьи раздела Конспекты лекций, шпаргалки:

▪ Маркетинг. Шпаргалка

▪ Таможенное право. Шпаргалка

▪ Хирургические болезни. Шпаргалка

Смотрите другие статьи раздела Конспекты лекций, шпаргалки.

Читайте и пишите полезные комментарии к этой статье.

<< Назад

Последние новости науки и техники, новинки электроники:

Донорское сердце способно быстро перенимать биологический возраст реципиента 12.10.2026

Возраст органов определяется не только количеством прожитых лет. На молекулярном уровне ткани могут стареть с разной скоростью, а после пересадки, как показывают новые эксперименты, их биологические характеристики способны заметно меняться под воздействием организма, в который они попадают. Исследователи из Бостона обнаружили, что молодые донорские сердца после трансплантации довольно быстро приобретают признаки биологического возраста реципиента, тогда как более старые органы могут, напротив, демонстрировать признаки омоложения. Чтобы оценить эти изменения, ученые применили три так называемых "часа старения" - молекулярных инструмента, позволяющих приблизительно определять биологический возраст клеток и тканей. В отличие от обычного календарного возраста, такие показатели отражают состояние организма на уровне определенных молекулярных изменений. Именно их анализ позволил специалистам проследить, как меняются пересаженные сердца спустя несколько месяцев после операции. Основные ...>>

Samsung Galaxy Buds On: клипсы с искусственным интеллектом вместо внутриканальных наушников 12.10.2026

Беспроводные наушники превратились в одно из самых привычных персональных электронных устройств, однако их конструкция по-прежнему во многом определяется необходимостью размещать излучатель внутри или непосредственно у слухового канала. Компания Samsung решила попробовать другой подход. Представленная модель Galaxy Buds On получила формат наушников-клипсов, которые закрепляются непосредственно на ухе и оставляют слуховой канал открытым. Samsung позиционирует новинку как устройство для продолжительного ношения, тренировок и прогулок, а также для ситуаций, когда пользователю важно одновременно слушать музыку и не терять связь с окружающей обстановкой. В отличие от традиционных внутриканальных моделей, Galaxy Buds On практически не изолируют человека от внешнего мира. При этом речь идет не об экспериментальном прототипе или утечке: официальная информация об устройстве уже опубликована в Samsung Newsroom. Открытая конструкция имеет и очевидный недостаток - добиться такой же глубины н ...>>

Ферроэлектрики научились выдерживать более 10 миллиардов циклов перезаписи 11.10.2026

Энергонезависимая память должна не только быстро записывать и сохранять информацию без постоянного питания, но и выдерживать огромное количество циклов перезаписи. Одним из перспективных вариантов такой технологии считаются ферроэлектрические материалы, однако их практическое применение долгое время ограничивалось сравнительно быстрым разрушением. Исследователям удалось установить механизм этого процесса на атомном уровне и предложить способ, который значительно увеличивает срок службы таких материалов. Работу выполнила группа ученых из Университета электронной науки и техники Сианя (Xidian University) совместно с коллегами из Гонконгского университета и Фуданского университета. Особый интерес специалистов вызвали ферроэлектрики со структурой вюрцита, в частности нитрид алюминия-скандия (AlScN). Эти материалы способны сохранять информацию благодаря изменению направления электрической поляризации на атомном уровне и хорошо совместимы с современными технологиями производства микросхем ...>>

Случайная новость из Архива

Новая серия микросхем S1R77000 13.02.2005

Новая серия микросхем S1R77000 от EPSON CORPORATION включает в себя четыре аналоговые входные микросхемы для сканеров, многофункциональных принтеров, факсов и других применений с функцией сканирования.

В состав микросхем входят такие узлы, как автоматическая регулировка уровня, квантование и аналого-цифровое преобразование. Имеются ПЗС-сенсоры вместе с генераторами разверток для них.

Другие интересные новости:

▪ Искусственное солнце для Тироля

▪ Генная инженерия превратит людей в суперменов

▪ Стереофоническая система Koda EX-569T

▪ Шум портит вкус еды

▪ Кристалл, очищающий воздух от углекислого газа

Лента новостей науки и техники, новинок электроники

 

Интересные материалы Бесплатной технической библиотеки:

▪ раздел сайта Альтернативные источники энергии. Подборка статей

▪ статья Отступить на заранее приготовленные позиции. Крылатое выражение

▪ статья Какое литературное произведение ошибочно приписывают Хемингуэю? Подробный ответ

▪ статья Обслуживание технологических колодцев, трубопроводов на предприятиях нефтепродуктообеспечения. Типовая инструкция по охране труда

▪ статья Зеленая протрава для цинковых вещей. Простые рецепты и советы

▪ статья Стабилизатор для настольной лампы. Энциклопедия радиоэлектроники и электротехники

Оставьте свой комментарий к этой статье:

Имя:


E-mail (не обязательно):


Комментарий:





Главная страница | Библиотека | Статьи | Карта сайта | Отзывы о сайте

www.diagram.com.ua

www.diagram.com.ua
2000-2026