Мой ассемблер

Приветствуем! Наш сайт поможет вам в изучении замечательного языка программирования — ассемблера. Наиболее он полезен для тех студентов и интересующихся, которые изучают ассемблер на примере МПС КР580ВМ80А — здесь содержится обширная информация об этом великолепном устройстве.

§2.12 Группа команд обмена байтами

XCHG- обменять содержимое пары регистров HL с содержимым пары регистров DЕ, причем обмен происходит следующим образом:

(H)↔(D)

(L)↔(E)

XTHL - cодержимое указателя стека SP и пары регистров HL, причем обмен происходит следующим образом:

(L)↔(SPL)

(H)↔(SPH)

где SPH -старший байт указателя стека;

SPL - младший байт указателя стека.

5. Группа команд арифметических и логических операций с одним операндом

CMC- инвертировать бит С признака переноса в регистре признаков F.

Пример:

Пусть для выполнения байт признака F

1 0 0 0 0 0 1 (C2)

После выполнения байт признака F будет

1 1 0 0 0 0 1 (C3)

STC - установить признак переноса.

Пример:

Пусть до выполнения байт признака F

1 0 0 0 0 0 1 1 (83)

После выполнения байт признака F будет

1 0 0 0 0 0 1 1 (83)

Примечание. Обычно эти две команды используют для очистки признака С следующий образом:

STC

СМС.

Такая последовательность гарантирует установление признака С в 0.

СМА
- инвертировать содержимое аккумулятора А.

Пример:

Пусть до выполнения в А число

1 1 0 0 1 1 0 (D9)

После выполнения команды в А будет число

0 0 1 0 0 1 1 0 (26).

DAA - десятичная коррекция. Если значение младшего 4-разрядного символа больше девяти, то есть признак переноса из младшего полубайта АС=1, то корректор прибавляет двоичную цифру 6 к содержимому аккумулятора. Затем анализируется старший полубайт и, если он содержит число, большее девяти, то есть признак переноса С=1, то корректирует содержимое аккумулятора А путем прибавления к старшему полубайту двоичной цифры 6.

Страницы: 1 | 2