PIC16C925/926
INCFSZ
Increment f, Skip if 0
Syntax:
Operands:
Operation:
Status Affected:
[ label ] INCFSZ f [,d]
0 ≤ f ≤ 127
d ∈ [0,1]
(f) + 1 → (destination),
skip if result = 0
None
Encoding:
00
1111 dfff ffff
Description:
The contents of register ’f’ are incre-
mented. If ’d’ is 0, the result is placed
in the W register. If ’d’ is 1, the result is
placed back in register ’f’.
If the result is 1, the next instruction is
executed. If the result is 0, a NOP is
executed instead, making it a 2TCY
instruction.
Words:
1
Cycles:
1(2)
Q Cycle Activity:
Q1
Q2
Q3
Q4
Decode
Read
register ’f’
Process Write to
data destination
If Skip: (2nd Cycle)
Q1
Q2
Q3
Q4
No
No
No
No
Operation Operation Operation Operation
IORLW
Inclusive OR Literal with W
Syntax:
Operands:
Operation:
Status Affected:
[ label ] IORLW k
0 ≤ k ≤ 255
(W) .OR. k → (W)
Z
Encoding:
Description:
Words:
Cycles:
Q Cycle Activity:
11 1000 kkkk kkkk
The contents of the W register is
OR’ed with the eight-bit literal 'k'.
The result is placed in the W
register.
1
1
Q1
Q2
Q3
Q4
Decode
Read Process
literal ’k’ data
Write to
W
Example
IORLW
Before Instruction:
W = 0x9A
After Instruction:
W = 0xBF
Z=0
0x35
Example
HERE
INCFSZ CNT, 1
GOTO LOOP
CONTINUE •
•
•
Before Instruction:
PC
= address HERE
After Instruction:
CNT = CNT + 1
if CNT = 0,
PC
= address CONTINUE
if CNT ≠ 0,
PC
= address HERE +1
2001 Microchip Technology Inc.
Preliminary
DS39544A-page 123