English
Language : 

PIC17C7XX Datasheet, PDF (210/328 Pages) Microchip Technology – High-Performance 8-Bit CMOS EPROM Microcontrollers with 10-bit A/D
PIC17C7XX
DCFSNZ
Decrement f, skip if not 0
Syntax:
[label] DCFSNZ f,d
Operands:
0 ≤ f ≤ 255
d ∈ [0,1]
Operation:
(f) – 1 → (dest);
skip if not 0
Status Affected: None
Encoding:
0010 011d ffff ffff
Description:
The contents of register 'f' are decre-
mented. If 'd' is 0 the result is placed in
WREG. If 'd' is 1 the result is placed
back in register 'f'.
If the result is not 0, the next instruction,
which is already fetched, is discarded,
and an NOP is executed instead mak-
ing it a two-cycle instruction.
Words:
1
Cycles:
1(2)
Q Cycle Activity:
Q1
Decode
If skip:
Q1
No
operation
Q2
Read
register 'f'
Q2
No
operation
Q3
Process
Data
Q4
Write to
destination
Q3
No
operation
Q4
No
operation
Example:
HERE
ZERO
NZERO
DCFSNZ TEMP, 1
:
:
Before Instruction
TEMP_VALUE
=?
After Instruction
TEMP_VALUE = TEMP_VALUE - 1,
If TEMP_VALUE = 0;
PC
= Address (ZERO)
If TEMP_VALUE ≠ 0;
PC
= Address (NZERO)
GOTO
Unconditional Branch
Syntax:
[ label ] GOTO k
Operands:
0 ≤ k ≤ 8191
Operation:
k → PC<12:0>;
k<12:8> → PCLATH<4:0>,
PC<15:13> → PCLATH<7:5>
Status Affected: None
Encoding:
110k kkkk kkkk kkkk
Description:
GOTO allows an unconditional branch
anywhere within an 8K page boundary.
The thirteen bit immediate value is
loaded into PC bits <12:0>. Then the
upper eight bits of PC are loaded into
PCLATH. GOTO is always a two-cycle
instruction.
Words:
1
Cycles:
2
Q Cycle Activity:
Q1
Q2
Decode
Read literal
'k'
No
operation
No
operation
Q3
Process
Data
No
operation
Q4
Write to PC
No
operation
Example:
GOTO THERE
After Instruction
PC = Address (THERE)
DS30289A-page 210
© 1998 Microchip Technology Inc.