Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
EVM.docx
Скачиваний:
31
Добавлен:
17.04.2015
Размер:
833.51 Кб
Скачать

Страничная адресация

Страничная адресация (СТА) предполагает разбиение адресного пространства на страницы. Страница определяется своим начальным адресом, выступающим в качестве базы. Старшая часть этого адреса хранится в специальном регистре — регистре адреса страницы (РАС). В адресном коде команды указывается смещение внутри страницы, рассматриваемое как младшая часть исполнительного адреса. Исполнительный адрес образуется конкатенацией (присоединением) Ак к содержимому РАС, как показано на рис. 49. На рисунке символ точки • обозначает операцию конкатенации.

Рис. 49 Страничная адресация

Показатели эффективности страничной адресации имеют вид:

где М — количество страниц в памяти.

Блочная адресация

Блочная адресация используется в командах, для которых единицей обработки, служит блок данных, расположенных в смежных ячейках памяти. Этот способ очень удобен при работе с внешними запоминающими устройствами и в операциях с векторами. Для описания блока обычно берется адрес ячейки, где хранится первый или последний элемент блока, и общее количество элементов блока, заданное числом байтов или ячеек. Вместо длины блока может использоваться специальный признак «конец блока», помещаемый за последним элементом блока.

Стековая адресация

Данный вид адресации был рассмотрен нами при описании стековой архитектуры системы команд.

Распространенность различных видов адресации

Частота использования различных способов адресации существенно зависит от типа АСК. Для машин со стековой архитектурой очевидно, что основным способом адресации является стековая адресация. Для ВМ с аккумуляторной АСК главные способы адресации — это прямая и непосредственная.

Достаточно ясна и ситуация с МЗС-архитектурой. Из самой идеи этого подхода вытекает, что преимущественный способ адресации здесь — регистровая адресация.

Более сложным является вопрос о частоте использования различных видов адресации в регистровых ВМ. В рамках этой архитектуры существует множество машин с самыми разнообразными списками команд и различными сочетаниями способов адресации, в силу чего дать однозначный ответ относительно наиболее распространенных вариантов практически невозможно.

Единственное общее замечание — интенсивность применения конкретных способов адресации ощутимо зависит от характера решаемой задачи. Это обстоятельство обязательно должно учитываться пользователями при выборе ВМ под конкретное применение.

Способы адресации в командах управления потоком команд

Основными способами адресации в командах управления потоком команд являются прямая и относительная.

Для команд безусловного и условного перехода (ветвления) наиболее типична от- носительная адресация, когда в адресной части команды указывается смешение адреса точки перехода относительно текущей команды, то есть смещение относительно текущего содержимого счетчика команд. Использование данного способа адресации позволяет программе выполняться в любом месте памяти программы становятся перемещаемыми. Среди команд безусловного перехода доля относительной адресации составляет около 90%.

Для команд перехода чрезвычайно важно, насколько далеко адрес перехода отстоит от адреса команды перехода, иными словами, какова типичная величина смещения, Исследования показывают, длина смешения в основном не превышает 8 битов, что соответствует смещению в пределах ±128 относительно команды ветвлении. В подавляющем большинстве случаев переход идет в пределах 3-7 команд относительно команды перехода.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]