Datasheet

PIC16C62X
DS30235J-page 72 2003 Microchip Technology Inc.
SUBLW Subtract W from Literal
Syntax: [ label ] SUBLW k
Operands: 0 k 255
Operation: k - (W) → (W)
Status
Affected:
C, DC, Z
Encoding:
11 110x kkkk kkkk
Description: The W register is subtracted (2’s
complement method) from the eight
bit literal 'k'. The result is placed in
the W register.
Words: 1
Cycles: 1
Example 1: SUBLW 0x02
Before Instruction
W= 1
C= ?
After Instruction
W= 1
C = 1; result is positive
Example 2: Before Instruction
W= 2
C= ?
After Instruction
W= 0
C = 1; result is zero
Example 3: Before Instruction
W= 3
C= ?
After Instruction
W= 0xFF
C = 0; result is negative
SUBWF Subtract W from f
Syntax: [ label ] SUBWF f,d
Operands: 0 f 127
d [0,1]
Operation: (f) - (W) → (dest)
Status
Affected:
C, DC, Z
Encoding:
00 0010 dfff ffff
Description: Subtract (2’s complement method)
W register from 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 1: SUBWF REG1,1
Before Instruction
REG1= 3
W= 2
C= ?
After Instruction
REG1= 1
W= 2
C = 1; result is positive
Example 2: Before Instruction
REG1= 2
W= 2
C= ?
After Instruction
REG1= 0
W= 2
C = 1; result is zero
Example 3: Before Instruction
REG1= 1
W= 2
C= ?
After Instruction
REG1= 0xFF
W= 2
C = 0; result is negative