Адресация со смещением. При адресации со смещением исполнительный адрес формируется в результате суммирования содержимого адресного поля команды с содержимым одного или нескольких регистров процессора.
Относительная адресация. При относительной адресации (ОА) для получения исполнительного адреса операнда содержимое поля Ак команды складывается с содержимым счетчика команд. Таким образом, адресный код в команде представляет собой смещение относительно адреса текущей команды.
Базовая регистровая адресация. В базовой регистровой адресации (БРА) регистр, называемый базовым, содержит полноразрядный адрес, а поле Ас – смещение относительно этого адреса. Ссылка на базовый регистр может быть явной или неявной. В некоторых ВМ имеется специальный базовый регистр и его использование является неявным, то есть поле R в команде отсутствует. Более типичен случай, когда в роли базового регистра выступает один из регистров общего назначения (РОН), тогда его номер явно указывается в поле R команды.
Индексная адресация. При индексной адресации (ИА) поле Ас содержит адрес ячейки памяти, а регистр (указанный явно или неявно) – смещение относительно этого адреса.
Этот способ адресации похож на базовую регистровую адресацию. Вычисление исполнительного адреса операнда производится идентично.
В большинстве ВМ увеличение или уменьшение содержимого индексного регистра до или после обращения к нему осуществляется автоматически как часть машинного цикла. Такой прием называется автоиндексированием.
Страничная адресация. Страничная адресация (СТА) предполагает разбиение адресного пространства на страницы. Страница определяется своим начальным адресом, выступающим в качестве базы. Старшая часть этого адреса хранится в специальном регистре – регистре адреса страницы (РАС). В адресном коде команды указывается смещение внутри страницы, рассматриваемое как младшая часть исполнительного адреса. Исполнительный адрес образуется конкатенацией (присоединением) Ас к содержимому РАС.
Do'stlaringiz bilan baham: |