
2009 Microchip Technology Inc.
DS40044G-page 119
PIC16F627A/628A/648A
15.2
Instruction Descriptions
ADDLW
Add Literal and W
Syntax:
[ label ] ADDLW
k
Operands:
0
≤ k ≤ 255
Operation:
(W) + k
→ (W)
Status Affected:
C, DC, Z
Encoding:
11
111x
kkkk
Description:
The contents of the W register
are added to the eight bit literal
‘k’ and the result is placed in the
W register.
Words:
1
Cycles:
1
Example
ADDLW
0x15
Before Instruction
W = 0x10
After Instruction
W = 0x25
ADDWF
Add W and f
Syntax:
[ label ] ADDWF
f,d
Operands:
0
≤ f ≤ 127
d
∈ [0,1]
Operation:
(W) + (f)
→ (dest)
Status Affected:
C, DC, Z
Encoding:
00
0111
dfff
ffff
Description:
Add the contents of the W
register with 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’.
Words:
1
Cycles:
1
Example
ADDWF
REG1, 0
Before Instruction
W= 0x17
REG1 = 0xC2
After Instruction
W= 0xD9
REG1 = 0xC2
Z= 0
C= 0
DC
= 0
ANDLW
AND Literal with W
Syntax:
[ label ] ANDLW
k
Operands:
0
≤ k ≤ 255
Operation:
(W) .AND. (k)
→ (W)
Status Affected:
Z
Encoding:
11
1001
kkkk
Description:
The contents of W register are
AND’ed with the eight bit literal
‘k’. The result is placed in the W
register.
Words:
1
Cycles:
1
Example
ANDLW
0x5F
Before Instruction
W= 0xA3
After Instruction
W = 0x03
ANDWF
AND W with f
Syntax:
[ label ] ANDWF
f,d
Operands:
0
≤ f ≤ 127
d
∈ [0,1]
Operation:
(W) .AND. (f)
→ (dest)
Status Affected:
Z
Encoding:
00
0101
dfff
ffff
Description:
AND the W register with 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’.
Words:
1
Cycles:
1
Example
ANDWF
REG1, 1
Before Instruction
W= 0x17
REG1 = 0xC2
After Instruction
W= 0x17
REG1 = 0x02