Разница между режимами прямой и косвенной адресации
Предварительное условие: режимы адресации
1. Режим прямой адресации:
В режиме прямой адресации поле адреса в инструкции содержит эффективный адрес операнда, и промежуточный доступ к памяти не требуется. Сейчас это редко используется.
Пример:
Добавьте содержимое R1 и 1001 и сохраните обратно в R1:
Добавляем R1, (1001)
Здесь 1001 - это адрес, по которому хранится операнд.
2. Режим косвенной адресации:
В режиме косвенной адресации поле адреса в инструкции содержит ячейку памяти или регистр, в котором присутствует эффективный адрес операнда. Требуется два доступа к памяти. Далее он подразделяется на две категории: косвенный регистр и косвенный вызов памяти.
Пример:
НАГРУЗКА R1, @ 500
Вышеуказанная инструкция используется для загрузки содержимого ячейки памяти, хранящейся в ячейке памяти 500, в регистр R1. Другими словами, мы можем сказать, что эффективный адрес хранится в ячейке памяти 500.
Разница между режимами прямой и косвенной адресации:
S.NO | Режим прямой адресации | Режим косвенной адресации |
---|---|---|
1. | Поле адреса содержит действующий адрес операнда. | Поле адреса содержит ссылку на действующий адрес |
2. | Требуется только одна ссылка на память | Требуется две ссылки на память |
3. | Быстрая адресация | Медленнее, чем режим прямой адресации |
4. | Никакой дальнейшей классификации | Далее делятся на две категории |
5. | Никаких дополнительных расчетов для выполнения операции не требуется. | Требуется дальнейший расчет, чтобы найти эффективный адрес |