Лекции.Орг


Поиск:




Категории:

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

 

 

 

 


Прямая адресация




Самый простой вид адресации, так как в этом случае адрес данных в памяти (в основном требуется указывать смещение) находится непосредственно в команде и для его формирования не требуется никаких дополнительных источников или регистров.

1.1. Абсолютная прямая адресация

Эффективный адрес (смещение) операнда, расположенного в памяти, находится непосредственно в машинной команде.

Запись в регистр AX слова (размер данных определяется первым операндом команды – операндом приемником) со смещением от начала дополнительного сегмента равным 0002H:

 

MOV AX,ES:0002H

 

Запись в регистр DH байта (размер данных определяется первым операндом команды – операндом приемником) со смещением от начала сегмента данных равным 00ABH:

 

MOV DH,DS:00ABH

 

Но такая адресация применяется редко – обычно используемым ячейкам в программе присваиваются символические имена. В процессе трансляции ассемблер вычисляет и подставляет значения эффективных адресов этих имен в формируемую им машинную команду.

Запись в регистр DL байта с физическим адресом (транслятор по умолчанию подставляет значение регистра DS при определении физического адреса данных в памяти):

 

per1 DB 12

MOV DL,per1

 

1.2. Относительная прямая адресация

Используется для команд передачи управления (условных и безусловных переходов, организации цикла), для указания относительного адреса перехода. В машинной команде содержится смещение, которое прибавляется к значению указателя команд IP. То есть указывается не сам адрес перехода, а на сколько байтов вперед или назад надо перейти. У такого режима адресации два преимущества. Во-первых, машинная команда становится короче, так она содержит не полный адрес, а только смещение. Во-вторых, такой код не зависит от адреса, по которому он размещается в памяти.

Например, организация цикла:

 

metka:

...

LOOP metka

 

Организация условного перехода:

 

JC m5;переход на метку m1, если флаг cf = 1

MOV AL,2

...

m5: MOV AL,5

 





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


Дата добавления: 2015-10-01; Мы поможем в написании ваших работ!; просмотров: 434 | Нарушение авторских прав


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

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

Студенческая общага - это место, где меня научили готовить 20 блюд из макарон и 40 из доширака. А майонез - это вообще десерт. © Неизвестно
==> читать все изречения...

2372 - | 2320 -


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

Ген: 0.011 с.