Инкремент f, пропустить команду, если 0

Синтаксис: INCFSZ f,d

Операнды: 0<=f<=31, [0,1]

Операция: (f)+1->(dest); пропустить, если (dest)=0

Биты состояния: Не изменяются.

КОД: 0011 11df ffff

Описание: Регистр f увеличивается на 1. Если d=0, результат сохраняется в регистре W. Если d=1, результат сохраняется в том же регистре f. Если результат не равен 0, выполняется следующая команда. Если резуль­тат равен 0, следующая команда, считанная в текущем командном цикле, игнорируется, и вместо нее в следующем цикле выполняется NOP, в результате команда выполняется за два цикла.

Циклов: 1(2)

Пример: HERE INCFSZ CNT, 1

GOTO LOOP

CONTINUE

Перед выполнением команды: РС=адрес HERE

После выполнения команды: CNT=CNT+1

если CNT=0, РС=адрес CONTINUE

если CNT< >0, РС=адрес HERE+1

 

IORLW Inclusive OR literal to W