Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Режимы адресации данных микропроцессора Intel 8086




1) Непосредственный. Данное длинной 8 или 16 бит является частью команды. Например: выражение-константа: 12; 1010В; 08АH; ‘AB’; XX-YY-5.

mov ah,12;переслать в регистр ah значение 12

add ax,08AH;прибавить к содержимому регистра ax значение 08AH

2) Прямой. 16-битный эффективный адрес данного является частью команды. Например: переменная ± выражение- константа: CNT; CNT +5; ARRAY -5. Это означает, что соответствующие метки (переменные) определены предварительно в сегменте данных.

mov ah,cnt;переслать в регистр ah значение по адресу cnt

;относительно начала сегмента данных

add ax,cnt+5;прибавить к содержимому регистра ax значение по

;адресу, вычисляемому как сумма адреса cnt и 5

3) Регистровый. Данное содержится в определяемом командой регистре (Аx,bx,cx,dx,si,di,sp,bp).

Например: регистр: AX; BH; DL.

mov ah,al;переслать в регистр ah значение из регистра al

add ax,dx;прибавить к содержимому регистра ax значение из

;регистра dx

4) Регистровый косвенный. Эффективный адрес данного находится в базовом регистре BX или индексном регистре SI,DI:

.

Например: [регистр]: [BX].

 

mov ah,[bx];переслать в регистр ah значение по адресу, который

; находится в регистре bx

Таким образом, если в регистре bx находится значение 6, то в регистр ah пересылается информация, находящаяся по смещению 0006h относительно начала сегмента данных.

5) Регистровый относительный. Эффективный адрес равен сумме 8 или 16 битного смещения и содержимого базового или индексного регистров:

.

Например: переменная + [регистр±выражение константа]: CST[BX]; MES[SI+10H]; [BX-1].

mov ah,cst[si];переслать в регистр ah значение по адресу, который

;определяется как сумма смещения метки cst

;относительно начала сегмента данных и регистра si

При этом метка cst должна быть предварительно описана в сегменте данных. Если cst имеет смещение 0002h относительно начала сегмента данных, а в si записано значение 7h, то эффективный адрес данного относительно начала сегмента данных составит 0009h (0002h+7h).

6) Базовый индексный. Эффективный адрес равен сумме содержимого базового и индексного регистров, определяемых командой:

.

Например: [базовый регистр][индексный регистр]: [BX][DI].

mov ah,[bx][di];переслать в регистр ah значение по адресу,

;равному сумме содержимого регистров bx и di

Если в регистре bx записано значение 5h, а в регистре di – значение 3h, то в регистр ah пересылается информация по смещению 8h (5h+3h) относительно начала сегмента данных.

7) Относительный базовый индексный. Эффективный адрес равен сумме 8 или 16 битного смещения и базово - индексного адреса:

.

Например: переменная + [базовый регистр±выражение константа] [индексный регистр±выражение константа]: E[BX+5][SI-2]; DATA[BX][SI]; [BX+2][SI].

mov ah,data[bx][si];переслать в регистр ah значение по адресу,

;равному сумме смещения метки data

;относительно начала сегмента, содержимого

;регистра bx и содержимого регистра si

Если метка data имеет смещение 0002h, в регистре bx записано значение 8h, а в регистре si – значение 5h, то в регистр ah передается значение, находящееся по смещению 0015h относительно начала сегмента данных.





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


Дата добавления: 2016-11-12; Мы поможем в написании ваших работ!; просмотров: 300 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Сложнее всего начать действовать, все остальное зависит только от упорства. © Амелия Эрхарт
==> читать все изречения...

2160 - | 2048 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.008 с.