|
|
|
|
Абсолютная адресация
Абсолютная адресация выполняется в тех случаях, когда явно указывается адрес физической памяти. Для выполнения абсолютной адресации в семействе
микропроцессоров 8086 необходимо явно указать адрес сегмента и смещение. Эта ссылка каждый раз указывает на одну и ту же ячейку памяти. Абсолютная
адресация в микропроцессоре 8086 используется редко. Только несколько инструкций микропроцессора 8086 имеют способность генерировать абсолютные адреса.
Этими инструкциями являются : внутрисегментные (далекие) инструкции JMP - безусловный переход и CALL - вызов процедуры, а также инструкции LDS и LES
(загрузка указателя, используя DS или ES). Инструкции JMP и CALL (непосредственные или косвенные) обновляют не только смещение (указатель инструкции),
но и регистр сегмента кода (CS). Он указывает физический адрес памяти. В свою очередь, инструкции LDS и LES не только загружают смещение в 16-битовый
регистр, но и загружают либо регистр сегмента данных (DS), либо регистр дополнительного сегмента (ES). Опять это физический адрес памяти.
Другим способом создания абсолютного адреса является использование инструкции MOV - пересылка и POP - извлечь из стека для непосредственной загрузки
константы в один из регистров сегмента. Заметим однако, что значение, пересылаемое с помощью инструкции POP в регистр CS, в процессорах iAPX186,
iAPX188, или iAPX286 недопустимо и не должно выполняться, если только по причине совместимости.
|
|