На главную
Подписка
Новости










Главная / MS-DOS / MS-DOS. РУКОВОДСТВО РАЗРАБОТЧИКА / Глава 2 / Абсолютная адресация Сделать домашней страницей Добавить в избранное Написать писмо

НАЗАД СОДЕРЖАНИЕ ВПЕРЁД

Абсолютная адресация

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


Другим способом создания абсолютного адреса является использование инструкции MOV - пересылка и POP - извлечь из стека для непосредственной загрузки константы в один из регистров сегмента. Заметим однако, что значение, пересылаемое с помощью инструкции POP в регистр CS, в процессорах iAPX186, iAPX188, или iAPX286 недопустимо и не должно выполняться, если только по причине совместимости.


НАЗАД СОДЕРЖАНИЕ ВПЕРЁД

Hosted by uCoz