Относительная адресация

 

Для команд безусловного и условного перехода (ветвления) наиболее типична относительная адресация, когда в адресной части команды указывается смещение адреса точки перехода относительно текущей команды, то есть смещение относи­тельно текущего содержимого регистра номера команды. Использование данного способа адресации позволяет программе выполняться в любом месте оперативной памяти — програм­мы становятся перемещаемыми. Среди команд безусловного перехода доля отно­сительной адресации составляет около 90%.

Для команд перехода чрезвычайно важно, насколько далеко адрес перехода от­стоит от адреса команды перехода, иными словами, какова типичная величина смещения. Часто длина смещения не превышает 8 разрядов, что соответствует смещению в пределах ±128 относительно команды ветвления.

При относительной адресациидля получения исполнительного адреса опе­ранда содержимое поля «смещение»команды складывается с содержимым регистра номера команды (рис. 15.7).

 
 

 

 


Рис. 15.7. Относительная адресация

 

Следует отметить, что в момент вычисления исполнительного адреса операнда в регистре номера команды уже может быть сформирован адрес следующей команды, что нужно учитывать при выборе вели­чины смещения. Обычно поле «смещение»трактуется как двоичное число в дополни­тельном коде.

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

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

 

 

Контрольные вопросы

 

  1. Что такое исполнительный адрес?
  2. Что такое способ адресации?
  3. Назовите особенности непосредственной адресации
  4. Как формируется исполнительный адрес при прямой адресации?
  5. Как формируется исполнительный адрес при косвенной адресации?
  6. Как формируется исполнительный адрес при регистровой адресации?
  7. Как формируется исполнительный адрес при относительной адресации?
  8. Как формируется исполнительный адрес при базовой регистровой адресации?
  9. Как формируется исполнительный адрес при индексации?
  10. Какие способы адресации используются в командах управления потоком команд?







Дата добавления: 2015-09-29; просмотров: 946;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.