Лекция: Типы адресации в командах на языке Ассемблера (Орг.ЭВМ)
К группе команд адресации относятся команды:
Mov <Операнд назначения (приемник)>, <операнд- источник>
Xchg <Операнд1>, <операнд2>.
Mov – это основная команда пересылки данных. В ней допустимо большинство из возможных сочетаний операндов:
Mov ax,table; пересылка из памяти в регистр
Mov table, ax; и наоборот
Mov ds, ax; пересылка между 16-битовыми регистрами
Mov bl,al; пересылка между 8-битовыми регистрами
Mov cl,-30; пересылка константы в регистр
Mov BX, 25h; пересылка константы в память
В команде Mov исключаются следующие сочетания операндов:
— сегментный регистр-память. Нельзя загрузить в сегментный регистр значение непосредственно из памяти. Поэтому для такой загрузки используют обычно 2 команды пересылки – через регистр общего назначения или через стек.
— ячейка памяти-ячейка памяти. Нельзя осуществлять непосредственную пересылку данных из одной ячейки памяти и другую. Такая пересылка осуществляется через регистр общего назначения.
— сегментный регистр-сегментный регистр. Нельзя пересылать содержимое одного сегментного регистра в другой сегментный регистр, однако при необходимости такой пересылки поступают также, как и в предыдущих случаях: пересылку осуществляют через регистр общего назначения;
— нельзя использовать сегментный регистр CS в качестве операнда назначения (приемника).
Команда Xchg(exchange) меняет между собой значения двух регистров общего назначения или регистра ОН и ячейки памяти. Необходимое требование к операндам – чтобы они имели один тип. Например:
Xchg AX, BX; обменять значения двух регистров (слова
Xchg AL, BH; или байты
В зависимости от используемого режима адресации получение исполнительного адреса может заключаться только в извлечении его как составной части исполняемой команды, а могут потребоваться дополнительные операции сложения составной части команды с содержимым других регистров.
Различают адресацию операндов:
— непосредственную, которая заключается в указании в команде самого значения операнда, а не его адреса;
— прямую, предполагающую указание в команде непосредственно исполнительного адреса;
— косвенную, при которой в команде указывается адрес регистра или ячейки памяти, в которых хранится адрес операнда или его составляющие;
— ассоциативную (используется в ассоциативных запоминающих устройствах, на ней останавливаться не будем);
— неявную, когда адреса операндов в команде не указываются, а подразумеваются кодом операции.
Указать, какой из приведенных вариантов более соответствует понятию Relational DBMS (БД)
Система управления реляционными базами данных.