Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпора_ИВСИТ.docx
Скачиваний:
83
Добавлен:
21.12.2018
Размер:
7.66 Mб
Скачать

66. Прямая и прямая регистровая адресация.

Прямая адресация - способ определения операнда — просто дать его полный адрес.

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

Регистровая адресация - по сути напоминает прямую, только в данном случае вместо ячейки памяти указывается регистр. Поскольку регистры очень важны (благодаря быстрому доступу и коротким адресам), этот режим адресации является самым распространенным на большинстве компьютеров.

Прямая регистровая адресация

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

67. Косвенная регистровая адресация

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

Если адрес используется таким образом, он называется указателем. Преимущество косвенной адресации состоит в том, что можно обращаться к памяти, не имея в команде полного адреса. Кроме того, многократно выполняя данную команду, можно, меняя значение в регистре, использовать разные слова памяти. Недостаток:  двойное обращение в память (ухудшает временные характеристики, расходуется 2 ячейки опертивной памяти).

68. Задачи, возлагаемые на систему адресации. Автоинкрементая и автодекрементная адресация.

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

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

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

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

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