История создания ПЭВМ и их программного обеспечения. Сивохин А.В - 54 стр.

UptoLike

54
Для вычисления этого адреса могут быть использованы любые
переменные базы, индексы и смещения. Переменные базы и индексы
являются величинами, хранящимися в общих регистрах, а величина
смещения содержится в команде. Для хранения базы или индекса
может быть использован любой общий регистр.
Величина в индексном регистре может быть маштабирована с по-
мощью
коэффициентов 1, 2, 4 или 8, что дает возможность делать
ссылки на элементы массива или записи соответствующей длины.
Величина смещения может иметь разрядность 8 или 32 бит и интер-
претироваться процессором как величина со знаком в дополнитель-
ном коде.
Разумные комбинации базы, индекса и смещения дают следую-
щие способы адресации памяти 80386:
прямая: используется только смещение;
регистровая косвенная: используется только база;
базовая: используются база и смещение;
индексная: используется масштабируемый индекс;
индексная со смещением: используются масштабируемый ин-
декс и смещение;
базовая индексная: используются база и масштабируемый ин-
декс;
базовая индексная со смещением: используются база, масшта-
бируемый индекс и смещение.
Вычисленный таким образом эффективный адрес складывается с
базовым адресом сегмента, загруженным из дискриптора таблицы
сегментов для текущего селектора сегмента. В результате получается
линейный адрес, который превращается в физический специальным
блоком страничной переадресации.
   Для вычисления этого адреса могут быть использованы любые
переменные базы, индексы и смещения. Переменные базы и индексы
являются величинами, хранящимися в общих регистрах, а величина
смещения содержится в команде. Для хранения базы или индекса
может быть использован любой общий регистр.
   Величина в индексном регистре может быть маштабирована с по-
мощью коэффициентов 1, 2, 4 или 8, что дает возможность делать
ссылки на элементы массива или записи соответствующей длины.
Величина смещения может иметь разрядность 8 или 32 бит и интер-
претироваться процессором как величина со знаком в дополнитель-
ном коде.
   Разумные комбинации базы, индекса и смещения дают следую-
щие способы адресации памяти 80386:
   •    прямая: используется только смещение;
   •    регистровая косвенная: используется только база;
   •    базовая: используются база и смещение;
   •    индексная: используется масштабируемый индекс;
   •  индексная со смещением: используются масштабируемый ин-
декс и смещение;
   •    базовая индексная: используются база и масштабируемый ин-
декс;
   • базовая индексная со смещением: используются база, масшта-
бируемый индекс и смещение.
   Вычисленный таким образом эффективный адрес складывается с
базовым адресом сегмента, загруженным из дискриптора таблицы
сегментов для текущего селектора сегмента. В результате получается
линейный адрес, который превращается в физический специальным
блоком страничной переадресации.




                                  54