16. Ссылочный тип данных. Динамическая память. Динамические переменные. Работа с динамической памятью
Статической переменной (статически размещенной) называется описанная явным образом в программе переменная, обращение к ней осуществляется по имени. Место в памяти для размещения статических переменных определяется при компиляции программы. В отличие от таких статических переменных в программах, написанных на языке Pascal, могут быть созданы динамические переменные. Основное свойство динамических переменных заключается в том, что они создаются, и память для них выделяется во время выполнения программы.
Размещаются динамические переменные в динамической области памяти (heap-области). Динамическая переменная не указывается явно в описаниях переменных, и к ней нельзя обратиться по имени. Доступ к таким переменным осуществляется с помощью указателей и ссылок.
Cсылочный тип (указатель) определяет множество значений, которые указывают на динамические переменные определенного типа, называемого базовым типом. Переменная ссылочного типа содержит адрес динамической переменной в памяти. Если базовый тип является еще не описанным идентификатором, то он должен быть описан в той же самой части описания типов, что и тип-указатель.
Зарезервированное слово nil обозначает константу со значением указателя, которая ни на что не указывает.
Приведем пример описания динамических переменных.
var p1, p2: ^real;
p3, p4: ^integer;
...
Процедуры и функции работы с динамической памятью
1. Процедура New{var p: Pointer).
Выделяет место в динамической области памяти для размещения динамической переменной p", и ее адрес присваивает указателю p.
2. Процедура Dispose(var p: Pointer).
Освобождает участок памяти, выделенный для размещения динамической переменной процедурой New, и значение указателя p становится неопределенным.
3. Процедура GetMem(var p: Pointer; size: Word).
Выделяет участок памяти в heap-области, присваивает адрес его начала указателю p, размер участка в байтах задается параметром size.
4. Процедура FreeMem(varp: Pointer; size: Word).
Освобождает участок памяти, адрес начала которого определен указателем p, а размер - параметром size. Значение указателя p становится неопределенным.
5. Процедура Mark{var p: Pointer) записывает в указатель p адрес начала участка свободной динамической памяти на момент ее вызова.
6. Процедура Release(var p: Pointer) освобождает участок динамической памяти, начиная с адреса, записанного в указатель p процедурой Mark, т. е. очищает ту динамическую память, которая была занята после вызова процедуры Mark.
7. Функция MaxAvail: Longint возвращает длину в байтах самого длинного свободного участка динамической памяти.
8. Функция MemAvail: Longint возвращает полный объем свободной динамической памяти в байтах.
9. Вспомогательная функция SizeOf(X):Word возвращает объем в байтах, занимаемый X, причем X может быть либо именем переменной любого типа, либо именем типа.
Автор: Цветкова А.В.
<< Назад: Модули. Виды модулей
>> Вперед: Абстрактные структуры данных
Рекомендуем интересные статьи раздела Конспекты лекций, шпаргалки:
▪ Логика. Шпаргалка
▪ Адвокатура и нотариат. Шпаргалка
▪ Адвокатура и нотариат. Конспект лекций
Смотрите другие статьи раздела Конспекты лекций, шпаргалки.
Читайте и пишите полезные комментарии к этой статье.
<< Назад
Последние новости науки и техники, новинки электроники:
Дети, растущие рядом с природой, обретают крепкие кости
02.03.2026
Влияние окружающей среды на здоровье человека становится все более очевидным, особенно в детском возрасте. Новое исследование, опубликованное в журнале JAMA Network Open, показывает, что близость к природе напрямую связана с крепостью костей у детей. Ученые установили, что у детей, чьи дома окружены природными территориями в радиусе 1000 метров на 25% больше обычного, риск развития крайне низкой плотности костей снижается на 65%.
Для проведения исследования были проанализированы данные более 300 детей, проживающих в городских, пригородных и сельских районах Фландрии в Бельгии. Плотность костной ткани у детей в возрасте от четырех до шести лет оценивалась с помощью ультразвуковых методов. Такой подход позволил безопасно и точно измерить состояние костей на ранних этапах формирования скелета.
При анализе учитывались ключевые факторы, влияющие на рост и развитие детей: возраст, вес, рост, этническая принадлежность и уровень образования матери. На основании этих параметров исследоват ...>>
Самовосстанавливающаяся инфраструктура будущего
02.03.2026
Современные мосты и бетонные конструкции по всему миру сталкиваются с проблемой устаревания и износа. Многие сооружения, построенные до 1980-х годов, постепенно теряют свою несущую способность, что требует дорогого ремонта или полной замены. Недавние разработки ученых из Швейцарских федеральных лабораторий материаловедения и технологий (Empa) предлагают инновационное решение - систему укрепления бетонных конструкций с помощью "умной стали", способной самостоятельно устранять трещины и повреждения.
В основе новой технологии лежит арматура из сплава на основе железа с эффектом памяти формы (Fe-SMA). Этот материал обладает уникальным свойством: при нагревании до 190-200 °C стержни стремятся вернуться к своей первоначальной конфигурации. В бетонной конструкции это создает внутреннее напряжение, которое затягивает трещины и выравнивает деформированные элементы, существенно повышая прочность и долговечность сооружений.
Актуальность разработки объясняется критическим состоянием инфрастр ...>>
Поцелуи полезны для здоровья
01.03.2026
Вопрос о том, как социальные связи и близость с партнером отражаются на здоровье человека, привлекает внимание не только психологов, но и специалистов в области микробиологии. Новое исследование показывает, что совместное проживание с любимым человеком может оказывать значительное влияние на микробиом кишечника и общее самочувствие.
Доктор Наоми Миддлтон, клинический психологи и эксперт по здоровью кишечника, объяснила, что все аспекты совместной жизни - поцелуи, совместное питание, физическая близость и даже просто пребывание рядом - тесно связаны с поддержанием сбалансированной кишечной микрофлоры. Она подчеркивает, что здоровье экосистемы кишечника во многом определяется социальными взаимодействиями и повседневной близостью с другими людьми.
По словам Миддлтон, длительное совместное пребывание с партнером может способствовать увеличению микробного разнообразия в кишечнике, а также снижать воспалительные процессы, связанные со стрессом. Такой эффект обусловлен тем, что микробио ...>>
Случайная новость из Архива Пластиковый транзистор усиливает биохимический сигнал
10.04.2023
Молекулы в нашем теле постоянно общаются. Некоторые из этих молекул обеспечивают биохимический отпечаток пальца, который может указать, как заживает рана, действует ли лечение рака или нет, или вирус вторгся в организм. Если бы мы могли ощущать эти сигналы в режиме реального времени с высокой чувствительностью, тогда мы могли бы быстрее распознавать проблемы со здоровьем и следить за прогрессированием болезни.
Теперь исследователи Северо-Западного университета разработали новую технологию, облегчающую подслушивание внутренних разговоров нашего тела.
Хотя химические сигналы организма невероятно слабы, что затрудняет их обнаружение и анализ, специалисты разработали новый метод, усиливающий сигналы более чем в 1000 раз. Транзисторы, строительный блок электроники могут усиливать слабые сигналы, чтобы обеспечить усиленный выход. Новый подход упрощает обнаружение сигналов без сложной и громоздкой электроники.
Обеспечивая усиление слабых биохимических сигналов, новый подход делает современную медицину на шаг ближе к диагностике на месте и мониторингу заболеваний в реальном времени.
Хотя они передают жизненно важную информацию, наполненную потенциалом для диагностики и лечения, многие химические датчики выдают слабые сигналы. На самом деле медицинские работники часто не могут расшифровать эти сигналы, не принимая образец (кровь, пот, слюна) и не пропуская его через высокотехнологичное лабораторное оборудование. Обычно это оборудование дорогостоящее и, возможно, даже расположено за пределами предприятия. И для возвращения результатов может потребоваться невыносимо много времени. Однако команда Ривне стремится почувствовать и усилить эти скрытые сигналы, не выходя из тела.
Другие ученые исследовали электрохимические сенсоры для биосенсора с помощью аптамеров, представляющих собой отдельные цепи ДНК, предназначенные для связывания с конкретными мишенями. После успешного связывания с интересной мишенью аптамеры действуют как электронный переключатель, складываясь в новую структуру, запускающую электрохимический сигнал. Но только с аптамерами сигналы часто слабы и очень восприимчивы к шумам и искажениям, если не проверить в идеальных и хорошо контролируемых условиях.
Чтобы избежать этой проблемы, команда Rivnay оснастила усилитель на традиционном датчике на основе электродов и разработала датчик на основе электрохимического транзистора с новой архитектурой, который может ощущать и усиливать слабый биохимический сигнал. В этом новом устройстве используется электрод для восприятия сигнала, но соседний транзистор предназначен для усиления сигнала. Исследователи также включили встроенный тонкопленочный электрод сравнения, чтобы сделать усиленные сигналы более стабильными и надежными.
Чтобы проверить новую технологию, команда Ривнай обратилась к обычному цитокину, типу сигнального белка, который регулирует иммунный ответ и участвует в восстановлении и регенерации тканей. Измеряя концентрацию определенных цитокинов вблизи раны, эксперты могут оценить, насколько быстро рана заживает, есть ли новая инфекция или другие медицинские вмешательства.
В серии экспериментов Ровнай и его команда смогли усилить сигнал цитокинов на три-четыре порядка величины по сравнению с традиционными методами определения аптамеров на основе электродов. Несмотря на то, что технология показала хорошие результаты в экспериментах по определению сигналов цитокинов, она должна иметь возможность усиливать сигналы от любой молекулы или химического вещества, включая антитела, гормоны или лекарства, где схема обнаружения использует электрохимические репортеры.
|
Другие интересные новости:
▪ Защищенная беспроводная камера наружного наблюдения Blink XT
▪ Электронный экран для защиты информации
▪ Система искусственного зрения на основе организма краба-скрипача
▪ Кевлар для аккумулятора
▪ Электромобиль Nio ET5
Лента новостей науки и техники, новинок электроники
Интересные материалы Бесплатной технической библиотеки:
▪ раздел сайта Студенту на заметку. Подборка статей
▪ статья От заката до рассвета. Крылатое выражение
▪ статья Почему кактусы обходятся без воды? Подробный ответ
▪ статья Сверхминиатюрная лебедка. Домашняя мастерская
▪ статья Усилитель на микросхеме TDA2822, 2х0,65 ватта. Энциклопедия радиоэлектроники и электротехники
▪ статья Вертикальная антенна на 144 МГц. Энциклопедия радиоэлектроники и электротехники
Оставьте свой комментарий к этой статье:
Главная страница | Библиотека | Статьи | Карта сайта | Отзывы о сайте

www.diagram.com.ua
2000-2026