Datasheet
1997 Microchip Technology Inc. DS30272A-page 77
PIC16C71X
INCFSZ Increment f, Skip if 0
Syntax: [
label
] INCFSZ f,d
Operands: 0 ≤ f ≤ 127
d ∈ [0,1]
Operation: (f) + 1 → (dest), skip if result = 0
Status Affected: 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
data
Write to
dest
If Skip: (2nd Cycle)
Q1 Q2 Q3 Q4
NOP NOP NOP NOP
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
IORLW Inclusive OR Literal with W
Syntax: [
label
] IORLW k
Operands: 0 ≤ k ≤ 255
Operation: (W) .OR. k → (W)
Status Affected: Z
Encoding:
11 1000 kkkk kkkk
Description:
The contents of the W register is
OR’ed with the eight bit literal 'k'. The
result is placed in the W register
.
Words: 1
Cycles: 1
Q Cycle Activity: Q1 Q2 Q3 Q4
Decode Read
literal 'k'
Process
data
Write to
W
Example
IORLW 0x35
Before Instruction
W = 0x9A
After Instruction
W = 0xBF
Z = 1