English
Language : 

PIC16C57-XT Datasheet, PDF (57/194 Pages) Microchip Technology – EPROM/ROM-Based 8-bit CMOS Microcontroller Series
PIC16C5X
GOTO
Unconditional Branch
Syntax:
[ label ] GOTO k
Operands:
0 ≤ k ≤ 511
Operation:
k → PC<8:0>;
STATUS<6:5> → PC<10:9>
Status Affected: None
Encoding:
101k kkkk kkkk
Description:
GOTO is an unconditional branch.
The 9-bit immediate value is
loaded into PC bits <8:0>. The
upper bits of PC are loaded from
STATUS<6:5>. GOTO is a two-
cycle instruction.
Words:
1
Cycles:
2
Example:
GOTO THERE
After Instruction
PC = address (THERE)
INCF
Increment f
Syntax:
[ label ] INCF f,d
Operands:
Operation:
0 ≤ f ≤ 31
d ∈ [0,1]
(f) + 1 → (dest)
Status Affected: Z
Encoding:
0010 10df ffff
Description:
The contents of register ’f’ are
incremented. If ’d’ is 0 the result is
placed in the W register. If ’d’ is 1
the result is placed back in
register ’f’.
Words:
1
Cycles:
1
Example:
INCF CNT, 1
Before Instruction
CNT = 0xFF
Z
=0
After Instruction
CNT = 0x00
Z
=1
INCFSZ
Increment f, Skip if 0
Syntax:
[ label ] INCFSZ f,d
Operands:
0 ≤ f ≤ 31
d ∈ [0,1]
Operation:
(f) + 1 → (dest), skip if result = 0
Status Affected: None
Encoding:
0011 11df ffff
Description:
The contents of register ’f’ are
incremented. 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 0, then the next
instruction, which is already
fetched, is discarded and a NOP is
executed instead making it a two-
cycle instruction.
Words:
1
Cycles:
1(2)
Example:
HERE
INCFSZ
GOTO
CONTINUE •
•
•
CNT, 1
LOOP
Before Instruction
PC
=
After Instruction
CNT
=
if CNT =
PC
=
if CNT ≠
PC
=
address (HERE)
CNT + 1;
0,
address (CONTINUE);
0,
address (HERE +1)
© 2002 Microchip Technology Inc.
Preliminary
DS30453D-page 55