Материал: А. Д. Чередов, А. Н. Мальчуков

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
производится фак- тическое обращение. В современных ЭВМ адресный код, как правило, не совпадает с исполнительным адресом. Таким образом, способ адресации можно определить как способ формирования исполнительного адреса операнда АИ по адресному коду команды АК.

Способов адресации существует много. Параметры процесса обра- ботки информации существенно зависят от выбранного способа адреса- ции. Одни способы адресации позволяют увеличить объём адресуемой памяти без удлинения команды, но снижают скорость выполнения опе- рации, другие ускоряют операции над массивами данных, третьи упрощают работу с подпрограммами и т.д.

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

Адресация операнда в команде может быть явной или неявной. При явной адресации в команде есть поле адреса операнда, в котором задается адресный код АК. Большинство методов адресации являются явными.

При неявной адресации адресное поле в команде отсутствует, адрес операнда подразумевается кодом операции. Метод неявной адресации операндов используется во всех процессорах. Основное его назначение уменьшение длины команды за счет исключения части адресов. При этом методе код операции точно задает адрес операнда. Например, из команды исключается адрес приемника результата. При этом подразу- мевается, что результат в этой команде помещается на место второго операнда.

Способы формирования адресов ячеек памяти (АИ
) можно разде- лить на абсолютные и относительные.

      1. 1   ...   25   26   27   28   29   30   31   32   ...   76

Абсолютные способы формирования исполнительного адреса


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

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

  1. к памяти.



Непосредственная адресация операнда


При этом способе операнд располагается в адресном поле команды. Обращение к регистровой памяти (РП) или ОП за операндом не произ- водится (R= 0), он выбирается вместе с командой. Таким образом, уменьшается время выполнения операции, сокращается объем памяти. Непосредственная адресация удобна для задания констант, длина кото- рых меньше или равна длине адресного поля команды.

Прямая адресация операндов


При этом способе (рис. 2.19) адресации обращение за операндом в РП или ОП производится по адресному коду в поле команды (R = 1), т.е. исполнительный адрес операнда совпадает с адресным кодом ко- манды И = АК).

РК

а


АИ РП







Операнд






mРП


mР







Операнд






РП

б

МРП


АИ ОП

mОП

ОП


МОП


Рис. 2.19. Схема прямой адресации:

а к регистровой памяти; б к основной памяти

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

Косвенная адресация операндов


При этом способе адресный код команды указывает адрес ячейки (регистра) памяти, в которой находится не сам операнд, а лишь адрес операнда, называемый указателем операнда. Адресация к операнду через цепочку указателей (косвенных адресов) называется косвенной (R 2).

Адрес указателя, задаваемый программой, остается неизменным, а косвенный адрес может изменяться в процессе выполнения програм- мы. Косвенная адресация, таким образом, обеспечивает переадресацию данных, т.е. упрощает обработку массивов и списковых структур дан- ных, упрощает передачу параметров подпрограммам, но не обеспечива- ет перемещаемость программ в памяти.

Косвенная адресация также широко используется в ЭВМ, имеющих короткое машинное слово, для преодоления ограничений короткого формата. В этом случае первый указатель должен располагаться в РП (рис. 2.20).


Адрес указателя

.

.

.

Адрес операнда

.

.

.



РП
ОП АиОП





М =2mРП

оп

АиОП=mРП

.

.

.

Операнд

.

.

.



Рис. 2.20. Схема косвенной адресации

      1. Относительные способы формирования исполнительных адресов ячеек памяти


Относительные способы формирования АИ предполагают, что двоичный код адреса ячейки памяти образуется из нескольких состав- ляющих: Б код базы, И код индекса, С код смещения, используе- мых в сочетаниях и С), и С), (Б, И и С).

При относительной адресации применяются два способа вычисле- ния адреса АИ:
Источник: https://files.student-it.ru/previewfile/151041