Реферат: Распределение памяти

фиксируемого при генерации взаимного их расположения, причем

для адресов тех объектов, расположение которых в памяти нельзя

определить статически ( при трансляции ), генерируются

динамические вычисления этих адресов.

Информационные объекты в процессе эволюции языков

программирования также развивались - от простых переменных

целого, символьного типов до субстанций которыми оперируют

современные объектно-ориентированные языки. Ниже будут

изложены механизмы распределения памяти для самых

разнообразных информационных объектов.

1. Области данных

Областью данных является ряд последовательных ячеек - блок

оперативной памяти, - выделенный для данных, каким-то образом

объединенных логически. Часто ( но не всегда ) все ячейки

области данных принадлежат одной и той же области действия в

программе на исходном языке; к ним может обращаться один и тот

же набор инструкций ( т.е. этой областью действия может быть блок

или тело процедуры ).

Во время компиляции ячейка для любой переменной времени

счета может быть представлена упорядоченной парой чисел ( номер

области данных, смещение ), где номер области данных - это

некоторый единственный номер, присвоенный области данных, а

смещение - это адрес переменной относительно начала области

данных. Когда мы генерируем команды обращения к переменной, эта

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

выполняется установкой адреса базы ( машинного адреса первой

ячейки ) области данных на регистр и обращению к переменной по

адресу, равному смещению плюс содержимое регистра. Пара ( номер

области данных, смещение ) таким образом переводится в пару

К-во Просмотров: 803
Бесплатно скачать Реферат: Распределение памяти