PIC16CR58A Microchip Technology, PIC16CR58A Datasheet - Page 48

no-image

PIC16CR58A

Manufacturer Part Number
PIC16CR58A
Description
ROM-Based 8-Bit CMOS Microcontroller Series
Manufacturer
Microchip Technology
Datasheets

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
PIC16CR58A-04/P042
Manufacturer:
MOTOROLA
Quantity:
80
PIC16C5X
COMF
Syntax:
Operands:
Operation:
Status Affected: Z
Encoding:
Description:
Words:
Cycles:
Example:
DECF
Syntax:
Operands:
Operation:
Status Affected: Z
Encoding:
Description:
Words:
Cycles:
Example:
DS30453B-page 48
Before Instruction
After Instruction
Before Instruction
After Instruction
REG1
REG1
W
CNT
Z
CNT
Z
Complement f
[ label ] COMF
0
d
(f)
The contents of register 'f' are comple-
mented. If 'd' is 0 the result is stored in
the W register. If 'd' is 1 the result is
stored back in register 'f'.
1
1
COMF
=
=
=
Decrement f
[ label ] DECF f,d
0
d
(f) – 1
Decrement register 'f'. If 'd' is 0 the
result is stored in the W register. If 'd' is
1 the result is stored back in register 'f'.
1
1
DECF
=
=
=
=
0010
0000
f
f
[0,1]
[0,1]
0x13
0x13
0xEC
0x01
0
0x00
1
(dest)
31
31
REG1,0
(dest)
CNT,
01df
11df
1
f,d
ffff
ffff
Preliminary
DECFSZ
Syntax:
Operands:
Operation:
Status Affected: None
Encoding:
Description:
Words:
Cycles:
Example:
GOTO
Syntax:
Operands:
Operation:
Status Affected: None
Encoding:
Description:
Words:
Cycles:
Example:
Before Instruction
After Instruction
After Instruction
PC
CNT
if CNT
PC
if CNT
PC
PC =
Decrement f, Skip if 0
[ label ] DECFSZ f,d
0
d
(f) – 1
The contents of register 'f' are decre-
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 0, the next instruction,
which is already fetched, is discarded
and an NOP is executed instead mak-
ing it a two cycle instruction.
1
1(2)
HERE
CONTINUE •
=
=
=
=
=
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
address (THERE)
0010
101k
f
k
[0,1]
address (HERE)
CNT - 1;
0,
address (CONTINUE);
0,
address (HERE+1)
PC<8:0>;
31
511
1998 Microchip Technology Inc.
d;
GOTO k
11df
kkkk
DECFSZ
GOTO
skip if result = 0
PC<10:9>
ffff
kkkk
CNT, 1
LOOP

Related parts for PIC16CR58A