PIC16C9XX
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 register.
Words:
1
Cycles:
1
Q Cycle Activity:
Q1
Q2 Q3
Q4
Decode Read Process Write to
literal "k" data
W
Example
ANDLW 0x5F
Before Instruction
W = 0xA3
After Instruction
W = 0x03
DS30444E - page 122
ANDWF
AND W with f
Syntax:
[label] ANDWF f,d
Operands:
0 ≤ f ≤ 127
d ∈ [0,1]
Operation:
(W) .AND. (f) → (destination)
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 regis-
ter. If 'd' is 1 the result is stored back in
register 'f'.
Words:
1
Cycles:
1
Q Cycle Activity:
Q1
Q2 Q3
Q4
Decode
Read
register
'f'
Process Write to
data destination
Example
ANDWF FSR, 1
Before Instruction
W = 0x17
FSR = 0xC2
After Instruction
W = 0x17
FSR = 0x02
BCF
Bit Clear f
Syntax:
[label] BCF f,b
Operands:
0 ≤ f ≤ 127
0≤b≤7
Operation:
0 → (f<b>)
Status Affected: None
Encoding:
01 00bb bfff ffff
Description:
Bit 'b' in register 'f' is cleared.
Words:
1
Cycles:
1
Q Cycle Activity:
Q1
Q2 Q3
Q4
Decode
Read
register
'f'
Process Write
data register 'f'
Example
BCF
FLAG_REG, 7
Before Instruction
FLAG_REG = 0xC7
After Instruction
FLAG_REG = 0x47
© 1997 Microchip Technology Inc.