Команды сравненияВсё познается в сравнении, в том числе и содержимое регистров.
Далее две операции сравнения.
; ============================================================
; ПРОВЕРКА НА РАВЕНСТВО
ОДНОГО РЕГИСТРА ДРУГОМУ РЕГИСТРУ
в общем виде команда XORWF F,D
MOVF CLOP,W ; копировать из KLOP в W
BCF STATUS,Z ; опустим флаг Z в ноль
XORWF CLON,F ; проводим сравнение
BTFSC STATUS,Z ; делаем бит-проверку Z-флага по условию
; если Z=1, то выполняется следующая инструкция, иначе пропускается
; ============================================================
Флаг Z после выполнения команды XORWF поднимется из нуля в единицу в том случае, если число в аккумуляторе совпадет с числом, которое находится в проверяемом регистре. Проще говоря, сравнивается содержимое аккумулятора с другим регистром.
; ============================================================
; ПРОВЕРКА НА РАВЕНСТВО
КОНСТАНТЫ КАКОМУ-ЛИБО РЕГИСТРУ
в общем виде команда XORLW K
MOVF CLOP,W ; копировать из KLOP в W
BCF STATUS,Z ; опустим флаг Z в ноль
XORLW .123 ; проводим сравнение с числом 123
BTFSC STATUS,Z ; делаем бит-проверку Z-флага
; если Z=1, то выполняется следующая инструкция, иначе – пропускается
; ============================================================
В данном случае сравнивается содержимое аккумулятора с обычным числом (константой).
|