русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Адресный тип. Динамическая память. Адреса и указатели.


Дата добавления: 2015-07-23; просмотров: 597; Нарушение авторских прав


Динамическая память – это оперативная память ПК, представляемаяпрограммно при её работе , за вычетом сегмента данных 164 Кбайта,стёка(обычно 16 Кбайт) и собственно тела программы (>200-300Кбайт) Д.п. - это практически единственная возможность обработкимассивов данных большой размерности.Сегмент данных - это непрерывная область оперативной памяти вкоторой размещаются все переменные, объявленные в программе.Д. размещение данных – означает использование Д.П. непосредственнопри работе программы.ОЗУ ПК представляет собой совокупность ячеек для храненияинформации - байтов, каждый из которых имеет собственный номер.Эти номера – называются адресами ,позволяющими обращаться к любомуa`irs памяти.Указатели – гибкое средство управления Д.П.. Это переменная,которая в качестве своего значения содержит адрес байта памяти. ВПК адреса задаются сегментами и 16 разрядными смещениями.Сегмент – это участок памяти имеющий длину 65536(64Кбайта) иначинается с физического адреса , кратного 16.Смещение – указывает, сколько байт от начала сегмента нужноотступить, чтобы обратиться к нужному адресу. Адресноепространство 1 Мбайт – стандартная память ПК. Для адресации впределах 1 Мбайта нужно 20 двоичных разрядов, которые получаютсяиз 2-х 16 разрядных слов (сегмента и смещения типа word )=>содержимое сегмента смещается на 4 разряда , освободившиесяправые заполняются нулями.Структура памяти: SYS область – КУЧА – SYS областьI^:=2;{в область памяти I заносится 2}Функции:ADDR (x) – возвращает результат типа pointer,в котором содержитсяадрес аргумента,x- любой объект программы (переменная ,процедура, функция)CSEG- возвращает значение, хранящееся в регистре CSмикропроцессора. Результат в слове типа word.DSEG - возвращает значение, хранящееся в регистре DSмикропроцессора. Результат в слове типа word.MAXAVAIL-возвращает размер в байтах наибольшего непрерывногоучастка кучи .MAXAVAIL(LONGINT).За вызов процедуры NEW или GETMEM нельзя зарезервировать памятибольше, чем значение, возвращаемое этой функцией.MEMAIAIL(LONGINT)- возвращает размер в байтах общего свободногопространства кучиOFS(Х)-возвращает значение типа WORD, содержащее смещения адресауказанного объекта.(Х)-выражение любого типа или процедура.PTR(seg , ofs) - возвращает значение типа POINTER, по заданномусегменту и смещениюSEG(X) - возвращает значение типа WORD, содержащее сегмент адресауказанного объекта.SIZEOF(X)- возвращает длину в байтах внутреннего представленияуказанного объекта.X- имя переменной, функции или типа.Процедуры:DISPOSE- возвращает в кучу фрагмент динамической памяти ,которыйбыл ранее зарезервирован за типизированным указателем.DISPOSE(TP) – типизированный указательFREEMEM - возвращает в кучу фрагмент динамической памяти ,которыйбыл ранее зарезервирован за нетипизированным указателемFREEMEM(P,SIZE) – P-нетипизированный указатель ,SIZE-длиннаосвобождающегося размера.GETMEM(P,SIZE) – резервирует за нетипизированным указателемфрагмент Д,П, требуемого размера(не более 65521)MARK(PTR) – запоминает текущее значение указателя кучи. PTR-указатель любого типаNEW - резервирует фрагмент кучи для размещения переменной .NEW(TP) - тип указательRELISE(PTR) – освобождает участок кучи .PTR – указатель любоготипа,в котором предварительно было сохранено процедурой MARKзначение указателя кучи.Д.П. широко используется для временного запоминания данных приработе с графикой и звуком в ПК.


<== предыдущая лекция | следующая лекция ==>
Библиотечный модуль CRT. Работа с клавиатурой, экраном, звуковым генератором. | Модульное программирование. Оформление модуля в ТП.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 3.328 сек.