|
Команда INCFSZ - инкремент f, пропустить команду, если 0
Синтаксис: |
INCFSZ f, b |
Операнд: |
0 < f < 127, d О [0, 1] |
Операция: |
(f) + 1 --> (dest); пропустить, если (dest) = 0 |
Биты состояния: |
Не изменяются |
Код: |
00 1111 dfff ffff |
Описание: |
Регистр f уменьшается на 1. Если d = 0, результат сохраняется в регистре W. Если d = 1, результат сохраняется в том же регистре f. Если результат не равен 0, выполняется следующая команда. Если результат равен 0, следующая команда, считанная в текущем командном цикле, игнорируется, и вместо нн в следующем цикле выполняется NOP, в результате команда выполняется за два цикла. |
Циклов: |
1 (2) |
Пример: |
HERE INCFSZ CNT,1
GOTO LOOP
CONTINUE
.
.
.
|
Перед выполнением команды:
После выполнения команды: |
PC = адрес HERE CNT = CNT + 1 если CNT = 0, PC = адрес CONTINUE если CNT № 0, PC = адрес HERE + 1 |
|
|