Для проверки содержимого некоторого регистра можно загрузить заданное число в регистр W, а затем выполнить операцию XOR («Исключающее ИЛИ») над содержимым проверяемого регистра и W. Если содержимое регистра равно числу, записанному в регистр W, то результат операции будет равен нулю, и флаг нуля установится в I. Например, переход к определенной точке программы при равенстве содержимого регистра PORTB числу ОхОА5 будет происходить при выполнении следующего фрагмента:
movlw OxOAS ; Получение проверяемого значения
xorwf PORTB, w ; Операция XOR с ожидаемым значением
btfsc STATUS, Z ; Получено совпадение?
goto PORTB_A5 ; Да, переход к выполнению определенного кода
Команда «comf» используется для инвертирования значения всех битов в регистре источника (команда 28.10). Следует заметить, что это команда не делает число отрицательным, то есть, не переводит его в дополнительный код. Отрицательное число N может быть получено из положительного Р следующим образом:
N = ( Р л OxOFF ) + 1