Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Схема формирования эффективного, линейного и физического адреса






В различных режимах процессор по-разному формирует физический адрес. Существует три этапа формирования физического адреса:

Формирование эффективного адреса: из логического адреса (база-индекс-смещение) процессор вычисляет эффективный адрес - расстояние от базового адреса текущего сегмента памяти.

Формирование линейного адреса: эффективный адрес складывается с базовым адресом сегмента, полученное значение является адресом в плоском (линейном) 4Гбайтном виртуальном пространстве.

Страничная трансляция адресов: линейное 4Гбайтное адресное пространство с помощью 4Кбайтных страниц отображается на физически присутствующие блоки памяти (физическое пространство).

В защищенном (PM – protected mode) режиме физический адрес памяти представляется тридцатью двумя двоичными разрядами, что позволяет обращаться к оперативной памяти объемом 4 гигабайта (232 байтов). В этом режиме для формирования адреса используется более сложная схема, которая в общем виде представлена на рис

Обозначение RPL (requested privilege) на схеме означает хранимую в двух младших разрядах сегментного регистра привилегию, с которой производится обращение к памяти. Основное ее назначение – защита памяти (см. 4.1.4).

На этой схеме в процессе формирования физического адреса можно выделить три этапа:

формирование эффективного адреса (являющегося, по сути, относительным адресом в логическом или физическом сегментах оперативной памяти);

формирование линейного адреса – представляющего собой либо физический адрес оперативной памяти, либо виртуальный адрес логического пространства страничной памяти при выключенном или включенном блоке страничной переадресации соответственно;

формирование физического адреса оперативной памяти в блоке страничной переадресации.

Последний из этих этапов не является строго обязательным и может быть отключен установкой в “0” бита 31 (PG – paging enable) в управляющем регистре CR0 процессора.

Способы адресации реализуются на этапе вычисления эффективного адреса. При этом может использоваться до четырех компонент: база, индекс, масштаб и смещение. База, индекс и смещение рассматривались выше, а масштаб (scale) – это множитель, используемый для увеличения индекса, который может принимать значения 1, 2, 4 и 8, обеспечивая соответствие формату данных (байту, полуслову, слову, двойному слову) определяемой индексом позиции в области (массиве) данных. Масштаб задается непосредственно в коде команды.

Эффективный адрес определяется по соотношению

эффективный адрес = [База]+ [Индекс * Масштаб] + [Смещение],

где [ ] указывают необязательность соответствующей компоненты.

Такое формирование эффективного адреса позволяет реализовать все основные способы адресации (прямую, косвенную, относительную, непосредственную).

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.