English
Language : 

PIC18F258 Datasheet, PDF (298/384 Pages) Microchip Technology – High Performance, 28/40-Pin Enhanced FLASH Microcontrollers with CAN
PIC18FXX8
DAW
Syntax:
Operands:
Operation:
Decimal Adjust W Register
[label] DAW
None
If [W<3:0> >9] or [DC = 1] then
(W<3:0>) + 6 → W<3:0>;
else
(W<3:0>) → W<3:0>;
If [W<7:4> >9] or [C = 1] then
(W<7:4>) + 6 → W<7:4>;
else
(W<7:4>) → W<7:4>;
Status Affected: C
Encoding:
0000 0000 0000 0111
Description:
DAW adjusts the eight-bit value in
W, resulting from the earlier addi-
tion of two variables (each in
packed BCD format) and produces
a correct packed BCD result.
Words:
1
Cycles:
1
Q Cycle Activity:
Q1
Q2
Decode
Read
register W
Example1:
DAW
Q3
Process
Data
Q4
Write
W
Before Instruction
W
=
C
=
DC
=
After Instruction
0xA5
0
0
W
C
DC
Example 2:
= 0x05
=1
=0
Before Instruction
W
=
C
=
DC
=
After Instruction
0xCE
0
0
W
= 0x34
C
=1
DC
=0
DECF
Decrement f
Syntax:
[ label ] DECF f [,d [,a]]
Operands:
0 ≤ f ≤ 255
d ∈ [0,1]
a ∈ [0,1]
Operation:
(f) – 1 → dest
Status Affected: C, DC, N, OV, Z
Encoding:
0000 01da ffff ffff
Description:
Decrement register 'f'. If 'd' is 0, the
result is stored in W. If 'd' is 1, the
result is stored back in register 'f'
(default). If ’a’ is 0, the Access
Bank will be selected, overriding
the BSR value. If ’a’ = 1, then the
bank will be selected as per the
BSR value (default).
Words:
1
Cycles:
1
Q Cycle Activity:
Q1
Q2
Decode
Read
register ’f’
Q3
Process
Data
Q4
Write to
destination
Example:
DECF CNT,
Before Instruction
CNT
Z
= 0x01
=0
After Instruction
CNT
Z
= 0x00
=1
DS41159B-page 296
 2002 Microchip Technology Inc.