English
Language : 

PIC18F6X2X Datasheet, PDF (315/386 Pages) Microchip Technology – 64/80-Pin High Performance, 64-Kbyte Enhanced FLASH Microcontrollers with A/D
PIC18F6X2X/8X2X
SUBLW
Subtract W from literal
Syntax:
[ label ] SUBLW k
Operands:
0 ≤ k ≤ 255
Operation:
k – (W) → W
Status Affected: N, OV, C, DC, Z
Encoding:
0000 1000 kkkk kkkk
Description:
W is subtracted from the eight-bit
literal ‘k’. The result is placed in
W.
Words:
1
Cycles:
1
Q Cycle Activity:
Q1
Decode
Q2
Read
literal ‘k’
Q3
Process
Data
Q4
Write to W
Example 1:
SUBLW 0x02
Before Instruction
W
=1
C
=?
After Instruction
W
=1
C
=1
Z
=0
N
=0
; result is positive
Example 2:
SUBLW 0x02
Before Instruction
W
=2
C
=?
After Instruction
W
=0
C
=1
Z
=1
N
=0
; result is zero
Example 3:
SUBLW 0x02
Before Instruction
W
=3
C
=?
After Instruction
W
=
C
=
Z
=
N
=
FF ; (2’s complement)
0 ; result is negative
0
1
SUBWF
Subtract W from f
Syntax:
[ label ] SUBWF f [,d [,a]
Operands:
0 ≤ f ≤ 255
d ∈ [0,1]
a ∈ [0,1]
Operation:
(f) – (W) → dest
Status Affected: N, OV, C, DC, Z
Encoding:
0101 11da ffff ffff
Description:
Subtract W from register ‘f’ (2’s
complement method). If ‘d’ is 0,
the result is stored in W. If ‘d’ is 1,
the result is stored back in regis-
ter ‘f’ (default). If ‘a’ is 0, the
Access Bank will be selected,
overriding the BSR value. If ‘a’ is
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 1:
SUBWF REG, 1, 0
Before Instruction
REG
W
=3
=2
C
=?
After Instruction
REG = 1
W
=2
C
=1
Z
=0
N
=0
; result is positive
Example 2:
SUBWF REG, 0, 0
Before Instruction
REG
W
=2
=2
C
=?
After Instruction
REG = 2
W
=0
C
=1
Z
=1
N
=0
; result is zero
Example 3:
SUBWF REG, 1, 0
Before Instruction
REG
W
=1
=2
C
=?
After Instruction
REG = FFh ;(2’s complement)
W
=2
C
= 0 ; result is negative
Z
=0
N
=1
 2003 Microchip Technology Inc.
Advance Information
DS39612A-page 313