Примеры использования команд ветвления и переходов

Пример 3.10. Условный переход по адресу 2021H, если содержимое аккумулятора равно 0.

MVI A, #B4Н ;загрузка в аккумулятор B4H A B4H

XRA A ;очистка аккумулятора

JZ 2021H ;Условный переход по адресу 2021Н,

;записанному во втором и третьем байтах

;команды, если содержимое аккумулятора

;равно 0

Пример 3.11. Условный переход к команде, которая расположена в ячейке памяти с адресом 2110Н при условии, что в результате выполнения операции сложения установился бит переноса.

MVI A, #FFH ;загрузка в аккумулятор FFН

ADI 80Н ;сложение содержимого аккумулятора

;с содержимым второго байта команды

;

JC 2110Н ;условный переход по адресу 2110Н,

;записанному во втором и третьем байтах

;команды, если содержимое аккумулятора

;равно 0

Пример 3.12. Программа записи чисел от 0 до 4 в ячейки памяти, расположенные последовательно, с адресами от 1010 до 1014 с использованием циклов.

LXI H, 1010Н ;загрузка в пару регистров HL адреса

; первой ячейки памяти

XRA A ;сброс аккумулятора в 00Н

LOOP MOV M, A ;запись в ячейку памяти, адрес которой

;1010Н, содержимого аккумулятора

INX H ;инкремент пары регистров HL

INR A ;инкремент аккумулятора

CPI 05H ;сравнить A=05h? Если да, то флаг Z

;установлен в 1.

JNZ LOOP ;перейти по метке LOOP, если Z=0

HLT ;остановить МП


7426067254682629.html
7426097473707657.html
    PR.RU™