Инструкция CMPИнструкция CMP (Compare) используется для сравнения содержимого аккумулятора с указанным операндом. Она концептуально выполняет операцию вычитания, но не сохраняет результат; вместо этого она обновляет биты флагов в зависимости от результата сравнения.
Формат инструкции:
CMP reg8
Этот формат используется для сравнения значения в регистре A c reg
8. Здесь reg
8 может быть любым регистром общего назначения, например A, B, C, D, E, H или L.
CMP mem8
Этот формат используется для сравнения значение в регистре A со значением в ячейке памяти, на которую указывает содержимое пары регистров HL.
- ; Автор: Довгополов Евгений Сергеевич
- num1: db 45
- num2: db 40
- main:
- ____mvi ____a, 14h___; Копируем шестнадцатеричное непосредственное значение 14h в регистр A.
- ____mvi ____b, 15h___; Копируем шестнадцатеричное непосредственное значение 15h в регистр B.
- ____cmp ____b________; Выполняем сравнение значения в регистре A со значением в регистре B.
- ____mvi ____a, num1__; Копируем значение переменной num1 в регистр A.
- ____lxi ____h, num2__; Загружаем адрес переменной num2 в пару регистров HL.
- ____ana ____m________; Выполняем сравнение значения в регистре A со значением в ячейке памяти.
- ____hlt______________; Завершаем программу.
Инструкция CMP влияет на флаги CY, Z, S, P и AC в регистре флагов.