Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
met.doc
Скачиваний:
14
Добавлен:
30.04.2019
Размер:
1.92 Mб
Скачать

Режимы адресации

Набор команд процессоров фирмы Intel обеспечивает выполнение операций над операндами, которые находятся в регистрах, памяти и непосредственно в команде. В набор входят безадресные, которые не имеют операндов, одно- и двухадресные команды (по количеству операндов). Для одноадресных команд операнд может располагаться в регистре или в памяти. Для двухадресных команд возможны следующие схемы расположения операндов:

–  регистр — регистр;

–  регистр — память;

–  память — регистр;

–  регистр — непосредственные данные;

–  память — непосредственные данные.

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

Рассмотрим следующие режимы адресации реального режима:

–  регистровая адресация;

–  непосредственная адресация;

–  прямая адресация;

–  косвенная адресация;

–  адресация по базе;

–  индексная адресация;

–  базово-индексная адресация.

В табл. 3.1 приведены форматы операндов языка ассемблера для всех семи режимов адресации, реализуемых процессором в реальном режиме, и для каждого формата указано, какой из сегментных регистров по умолчанию используется для вычисления физического адреса. Обратите внимание, что во всех режимах предполагается доступ к сегменту данных (т.е. сегментным регистром служит регистр DS), и только в тех случаях, когда используется регистр ВР, предполагается доступ к сегменту стека (т.е. сегментным регистром служит регистр SS).

Таблица 3.1

Форматы операндов

Режим адресации

Формат операнда

Сегментный регистр

Регистровый

AL, AH, AX

BL, BH, BX

CL, CH, CX

DL, DH, DX

SP

BP

SI

DI

Не используется

Непосредственный

Данное

Не используется

Окончание табл. 3.1

Режим адресации

Формат операнда

Сегментный регистр

Прямой

Сдвиг

Метка

DS

DS

Косвенный

[BX]

[BP]

[DI]

[SI]

DS

SS

DS

DS

По базе

[BX + сдвиг]

[BP + сдвиг]

DS

SS

Индексная

[DI + сдвиг]

[SI] + сдвиг

DS

DS

Базово-индексная

[BX + SI + сдвиг]

[BX + DI + сдвиг]

[BP + SI + сдвиг]

[BP + DI + сдвиг]

DS

DS

SS

SS

Регистровая адресация

В данном режиме процессор принимает данные из регистра или помещает данные в регистр. При этом данные могут быть восьмиразрядными (в этом случае используются 8 восьмиразрядных регистров общего назначения: AL, AH, BL, BH, CL, CH, DL и DH), а также шестнадцатиразрядными (используются 8 шестнадцатиразрядных регистра общего назначения: AX, BX, CX, DX, SP, BP, SI, и DI).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]