|
PIC16F627A_05 Datasheet, PDF (123/180 Pages) Microchip Technology – Flash-Based, 8-Bit CMOS Microcontrollers with nanoWatt Technology | |||
|
◁ |
PIC16F627A/628A/648A
DECFSZ
Decrement f, Skip if 0
Syntax:
[ label ] DECFSZ f,d
Operands:
0 ⤠f ⤠127
d â [0,1]
Operation:
(f) - 1 â (dest); skip if result =
0
Status Affected: None
Encoding:
00
1011 dfff ffff
Description:
The contents of register âfâ are
decremented. 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. A NOP is
executed instead making it a
two-cycle instruction.
Words:
1
Cycles:
1(2)
Example
HERE DECFSZ
GOTO
CONTINUE â¢
â¢
â¢
REG1, 1
LOOP
Before Instruction
PC
= address HERE
After Instruction
REG1 = REG1 - 1
if REG1 = 0,
PC = address CONTINUE
if REG1 â 0,
PC = address HERE+1
GOTO
Syntax:
Operands:
Operation:
Status Affected:
Encoding:
Description:
Words:
Cycles:
Example
Unconditional Branch
[ label ] GOTO k
0 ⤠k ⤠2047
k â PC<10:0>
PCLATH<4:3> â PC<12:11>
None
10
1kkk kkkk kkkk
GOTO is an unconditional
branch. The eleven-bit immedi-
ate value is loaded into PC bits
<10:0>. The upper bits of PC
are loaded from PCLATH<4:3>.
GOTO is a two-cycle instruction.
1
2
GOTO THERE
After Instruction
PC = Address THERE
© 2005 Microchip Technology Inc.
DS40044D-page 121
|
▷ |