ВУЗ:
Составители:
49
данных, размещенными в памяти, например, с соседними ячейками памя-
ти относительно эффективного адреса в базовом регистре.
Пример: mov ax, [bx+10], другая форма записи - mov ax, 10[bx]
Код Действие
8b4710
Запись содержимого ячейки памяти с EA (сегмент
DS), определяемым как сумма содержимого bx и
смещения в команде (100+10=110) в регистр ax
До выполнения После выполнения
ax=1234 ax=4
bx=100 bx=100
[110]=4 [110]=4 (Предварительно запишите 4 в DS:[0110])
ip=100 ip=103
Индексный метод адресации удобен при обработке массивов, когда
смещение указывает стартовый адрес массива, а содержимое индексного
регистра соответствует индексу массива.
Пример: mov ax, 0100[si], другая форма записи - mov ax, [si+0100]
Код Действие
8b840001
Запись содержимого ячейки памяти с EA (сегмент
DS), определяемым как сумма содержимого si и
смещения в команде (2+100=102) в регистр ax.
Можно рассматривать значение si как индекс мас-
сива
со стартовым адресом 100.
До выполнения После выполнения
ax=4321 ax=7
si=2 si=2
[0102]=7 [0102]=7 (Предварительно запишите 7 в DS:[0102])
ip=100 ip=104
Базовая индексная адресация.
Эффективный адрес равен сумме содержимого базового (BX или BP) и
индексного (SI или DI) регистров.
Инд. регистр
Команда
E
A
Баз. регистр Операнд
ОЗУ
Смещение
49
данных, размещенными в памяти, например, с соседними ячейками памя-
ти относительно эффективного адреса в базовом регистре.
Пример: mov ax, [bx+10], другая форма записи - mov ax, 10[bx]
Код Действие
Запись содержимого ячейки памяти с EA (сегмент
8b4710 DS), определяемым как сумма содержимого bx и
смещения в команде (100+10=110) в регистр ax
До выполнения После выполнения
ax=1234 ax=4
bx=100 bx=100
[110]=4 [110]=4 (Предварительно запишите 4 в DS:[0110])
ip=100 ip=103
Индексный метод адресации удобен при обработке массивов, когда
смещение указывает стартовый адрес массива, а содержимое индексного
регистра соответствует индексу массива.
Пример: mov ax, 0100[si], другая форма записи - mov ax, [si+0100]
Код Действие
Запись содержимого ячейки памяти с EA (сегмент
DS), определяемым как сумма содержимого si и
8b840001 смещения в команде (2+100=102) в регистр ax.
Можно рассматривать значение si как индекс мас-
сива со стартовым адресом 100.
До выполнения После выполнения
ax=4321 ax=7
si=2 si=2
[0102]=7 [0102]=7 (Предварительно запишите 7 в DS:[0102])
ip=100 ip=104
Базовая индексная адресация.
Эффективный адрес равен сумме содержимого базового (BX или BP) и
индексного (SI или DI) регистров.
Команда
Инд. регистр ОЗУ
Баз. регистр EA Операнд
Смещение
Страницы
- « первая
- ‹ предыдущая
- …
- 47
- 48
- 49
- 50
- 51
- …
- следующая ›
- последняя »
