
2002 Microchip Technology Inc.
Preliminary
DS40044A-page 113
PIC16F627A/628A/648A
15.1
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
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
REG1 = 0xC2
After Instruction
W
REG1 = 0xC2
Z
C
DC
= 0x17
= 0xD9
= 0
= 0
= 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
kkkk
Description:
The contents of W register are
AND’ed with the eight bit literal 'k'.
The result is placed in the W regis-
ter
.
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
REG1 = 0xC2
After Instruction
W
REG1 = 0x02
= 0x17
= 0x17