PIC16C54-20I/SS Microchip Technology, PIC16C54-20I/SS Datasheet - Page 57

no-image

PIC16C54-20I/SS

Manufacturer Part Number
PIC16C54-20I/SS
Description
ROM-Based 8-Bit CMOS Microcontroller Series
Manufacturer
Microchip Technology
Datasheet
GOTO
Syntax:
Operands:
Operation:
Status Affected: None
Encoding:
Description:
Words:
Cycles:
Example:
INCF
Syntax:
Operands:
Operation:
Status Affected: Z
Encoding:
Description:
Words:
Cycles:
Example:
2002 Microchip Technology Inc.
After Instruction
Before Instruction
After Instruction
PC
CNT
Z
CNT
Z
=
Unconditional Branch
[ label ]
0
k
STATUS<6:5>
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.
1
2
GOTO THERE
Increment f
[ label ]
0
d
(f) + 1
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’.
1
1
INCF
=
=
=
=
101k
0010
address (THERE)
k
f
[0,1]
PC<8:0>;
0xFF
0
0x00
1
31
511
CNT,
(dest)
GOTO k
INCF f,d
kkkk
10df
PC<10:9>
1
kkkk
ffff
Preliminary
INCFSZ
Syntax:
Operands:
Operation:
Status Affected: None
Encoding:
Description:
Words:
Cycles:
Example:
Before Instruction
After Instruction
PC
CNT
if CNT
PC
if CNT
PC
[ label ]
0
d
(f) + 1
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.
1
1(2)
HERE
CONTINUE •
Increment f, Skip if 0
0011
=
=
=
=
=
f
[0,1]
31
address (HERE)
CNT + 1;
0,
address (CONTINUE);
0,
address (HERE +1)
(dest), skip if result = 0
INCFSZ f,d
PIC16C5X
11df
INCFSZ
GOTO
DS30453D-page 55
ffff
LOOP
CNT, 1

Related parts for PIC16C54-20I/SS