Команда загрузки исполнительного адреса. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Команда загрузки исполнительного адреса.



LEA < операнд l >, < операнд 2 >

вычисляет исполнительный адрес второго операнда и помещает его в поле, на которое указывает первый операнд. Приведем примеры:

а) lea bx, exword - в регистр bx загружается исполнительный адрес exword;

б) lea bx, [ di +10] - в регистр bx загружается адрес l0-го байта относительно точки, на которую указывает адрес в регистре di.

Команды загрузки указателя.

L DS < регистр >,<операнд 2>

LЕS < регистр >,< операнд 2>

Команда LDS загружает в регистры D S:< регистр> указатель (< адрес сегмента >: < исполнительный адрес >), расположенный по адресу, указанному во втором операнде.

Команда LЕS загружает указатель по адресу, расположенному во втором операнде, в регистры ЕS:< регистр>.

Например:

lds si, exword

т.e. слово (2 байта) по адресу exword загружается в si, а по адресу exword + 2 - в ds.

Команда записи в стек.

PUSH < операнд>

организует запись в стек слова, адрес которого указан в операнде. Например;

p ush dx - запомнить содержимое регистра dx в стеке.

Команда восстановления из стека.

POP < операнд>

организует чтение из стека последнего слова и помещает его по адресу, указанному во втором операнде. Например:

pop dx - восстановить содержимое регистра dx из стека.

Команды сложения.

ADD <операнд 1>, <операнд 2>

ADC  <операнд 1>, <операнд 2>

устанавливают флаги четности, знака результата, наличия переноса, наличия переполнения.

Ilo команде A D D выполняется сложение двух операндов. Результат записывается по адресу первого операнда. По команде А DC также выполнятся сложение двух операндов, но к ним добавляется еще значение, записанное в бите переноса, установленном предыдущей командой сложения.

Приведем пример сложения двух 32-разрядных чисел:

Mov ax,value1

Add value2,ax

mov ax,value1+2

adc value2+2,ax

Исходные числа находится в основной памяти по адресам value 1 и value 2, а результат записывается по адресу value 1.

Команды вычитания.

SUB <уменьшаемое-результат>, <вычитаемое>

SBB  <уменьшаемое-результат>, <вычитаемое>

устанавливают флаги четности, знака результата, наличия заема, наличия переполнения.

При выполнении операции по команде SUB заем не учитывается, а по команде SBB - учитывается. Ограничения на местоположение операндов такие же, как и у команды сложения.

Команда изменения знака.

NEG <операнд>

знак операнда изменяется на противоположный.

Команда добавления единицы.

INC <операнд>

значение операнда увеличивается на единицу.

Команда вычитания единицы.

D E C <операнд>

значение операнда уменьшается на единицу.

Команда сравнения.

СМ P <операнд 1>, < операнд 2>

выполняется операция вычитания без записи результата и устанавливаются признаки во флажковом регистре.

Команды умножения.

MU L <операнд>

I М UL <операнд>

устанавливают флаги наличия переноса или переполнения.

По команде MU L числа перемножаются без учета, и по команде - I М UL с учетом знака (в дополнительном коде).

Рассмотрим пример:

Imul word ptr c

Здесь содержимое основной памяти по адресу " с" длиной слово умножается на содержимое регистра ax. Младшая часть результата операции записывается в регистр a х, а старшая часть - и регистр dx.

Команда деления.

DI V <операнд-делитель>

I DIV <операнд-делитель>

По команде DI V операция деления выполняется без учета, а по команде I DIV - с учетом знака (в дополнительном коде).

15. Команда преобразования байта в слово, а слова - в двойное слово.

CBW

CWD

По команде CBW число из al переписывается в ax (дополнение выполняется знаковыми разрядами). Аналогично по команде CW D число из ax переписывается в два регистра dx и ax.

Команды передачи управления.



Поделиться:


Последнее изменение этой страницы: 2021-12-15; просмотров: 29; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.135.198.49 (0.004 с.)