|
PIC18F2220_07 Datasheet, PDF (279/386 Pages) Microchip Technology – 28/40/44-Pin High-Performance, Enhanced Flash Microcontrollers with 10-Bit A/D and nanoWatt Technology | |||
|
◁ |
PIC18F2220/2320/4220/4320
INCFSZ
Increment f, skip if 0
Syntax:
Operands:
Operation:
Status Affected:
Encoding:
Description:
Words:
[ label ] INCFSZ f [,d [,a]]
0 ⤠f ⤠255
d â [0,1]
a â [0,1]
(f) + 1 â dest,
skip if result = 0
None
0011 11da ffff ffff
The contents of register âfâ are
incremented. If âdâ is â0â, the result
is placed in W. If âdâ is â1â, the result
is placed back in register âfâ
(default).
If the result is â0â, the next
instruction which is already fetched
is discarded and a NOP is executed
instead, making it a two-cycle
instruction. If âaâ is â0â, the Access
Bank will be selected, overriding
the BSR value. If âaâ = 1, then the
bank will be selected as per the
BSR value (default).
1
Cycles:
1(2)
Note: 3 cycles if skip and followed
by a 2-word instruction.
Q Cycle Activity:
Q1
Q2
Q3
Q4
Decode
Read
register âfâ
Process
Data
Write to
destination
If skip:
Q1
Q2
Q3
Q4
No
operation
No
operation
No
operation
No
operation
If skip and followed by 2-word instruction:
Q1
Q2
Q3
Q4
No
operation
No
operation
No
operation
No
operation
No
operation
No
operation
No
operation
No
operation
Example:
HERE INCFSZ CNT
NZERO :
ZERO :
Before Instruction
PC
= Address (HERE)
After Instruction
CNT = CNT + 1
If CNT = 0;
PC
= Address (ZERO)
If CNT â 0;
PC
= Address (NZERO)
INFSNZ
Increment f, skip if not 0
Syntax:
Operands:
Operation:
Status Affected:
Encoding:
Description:
Words:
[ label ] INFSNZ
0 ⤠f ⤠255
d â [0,1]
a â [0,1]
(f) + 1 â dest,
skip if result â 0
None
f [,d [,a]]
0100 10da ffff ffff
The contents of register âfâ are
incremented. If âdâ is â0â, the result
is placed in W. If âdâ is â1â, the result
is placed back in register âfâ
(default).
If the result is not â0â, the next
instruction which is already fetched
is discarded and a NOP is executed
instead, making it a two-cycle
instruction. If âaâ is â0â, the Access
Bank will be selected, overriding
the BSR value. If âaâ = 1, then the
bank will be selected as per the
BSR value (default).
1
Cycles:
1(2)
Note: 3 cycles if skip and followed
by a 2-word instruction.
Q Cycle Activity:
Q1
Q2
Q3
Q4
Decode
Read
register âfâ
Process
Data
Write to
destination
If skip:
Q1
Q2
Q3
Q4
No
operation
No
operation
No
operation
No
operation
If skip and followed by 2-word instruction:
Q1
Q2
Q3
Q4
No
operation
No
operation
No
operation
No
operation
No
operation
No
operation
No
operation
No
operation
Example:
HERE
ZERO
NZERO
INFSNZ REG
Before Instruction
PC
= Address (HERE)
After Instruction
REG = REG + 1
If REG â 0;
PC
= Address (NZERO)
If REG = 0;
PC
= Address (ZERO)
© 2007 Microchip Technology Inc.
DS39599F-page 277
|
▷ |