Индексная адресация

Индексная адресация

При индексной адресации (ИА) подполе содержит адрес ячейки памяти, а регистр (указанный явно или неявно) – смещение относительно этого адреса. Этот способ адресации похож на базовую регистровую адресацию. Поскольку при индексной адресации в поле находится полноразрядный адрес ячейки памяти, играющий роль базы, длина этого поля больше, чем при базовой регистровой адресации. Тем не менее, вычисление исполнительного адреса операнда производится идентично (рис. 2.70).

Рис. 2.70. Индексная адресация:

а – с индексным регистром; б – с использование одного из РОН

Индексная адресация предоставляет удобный механизм для организации итеративных вычислений. Пусть, например, имеется массив чисел, расположенных в памяти последовательно, начиная с адреса N, и мы хотим увеличить на единицу все элементы данного массива. Для этого требуется извлечь каждое число из памяти, прибавить к нему 1 и вернуть обратно, а последовательность исполнительных адресов будет следующей: N, N+ 1, N+ 2 и т.д., вплоть до последней ячейки, занимаемой рассматриваемым массивом. Значение N берется из поля команды, а в выбранный регистр, называемый индексным регистром, сначала заносится 0. После каждой операции содержимое индексного регистра увеличивается на 1.

Каждый электрик должен знать:  Выбор аппаратов управления и защиты

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

Каждый электрик должен знать:  Номинал вводного автомата меньше суммарный номинал групповых

Автоиндексирование с увеличением содержимого индексного регистра носит название автоинкрементной адресации и может быть описано следующим образом:

где (R) – содержимое индексного регистра с адресом R.

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

Автоиндексирование с уменьшением содержимого индексного регистра носит название автодекрементной адресации и может быть описано так:

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

Весьма полезным является еще один вариант индексной адресации – индексная адресация с масштабированием и смещением: содержимое индексного регистра умножается на масштабный коэффициент и суммируется с . Масштабный коэффициент может принимать значения 1, 2, 4 или 8, для чего в части команды выделяется дополнительное поле. Описанный способ адресации реализован, например, в микропроцессорах фирмы Intel.

Каждый электрик должен знать:  Питание светодиодной ленты. Блоки питания для светодиодных лент, особенности их выбора

Система команд многих вычислительных машин предоставляет возможность различным образом сочетать базовую и индексную адресации в качестве дополнительных способов адресации.

Не нашли то, что искали? Воспользуйтесь поиском:

Лучшие изречения: Для студента самое главное не сдать экзамен, а вовремя вспомнить про него. 10336 — | 7636 — или читать все.

188.64.171.182 © studopedia.ru Не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования. Есть нарушение авторского права? Напишите нам | Обратная связь.

Отключите adBlock!
и обновите страницу (F5)

очень нужно

Добавить комментарий