English
Language : 

PIC17C75X Datasheet, PDF (212/320 Pages) Microchip Technology – High-Performance 8-Bit CMOS EPROM Microcontrollers
PIC17C75X
SUBWF
Subtract WREG from f
Syntax:
Operands:
Operation:
Status Affected:
Encoding:
Description:
Words:
Cycles:
Q Cycle Activity:
Q1
Decode
[ label ] SUBWF f,d
0 ≤ f ≤ 255
d ∈ [0,1]
(f) – (W) → (dest)
OV, C, DC, Z
0000 010d ffff ffff
Subtract WREG from register 'f' (2’s
complement method). If 'd' is 0 the
result is stored in WREG. If 'd' is 1 the
result is stored back in register 'f'.
1
1
Q2
Read
register 'f'
Q3
Process
Data
Q4
Write to
destination
Example 1:
SUBWF REG1, 1
Before Instruction
REG1 = 3
WREG = 2
C
=?
After Instruction
REG1 = 1
WREG = 2
C
=1
Z
=0
; result is positive
Example 2:
Before Instruction
REG1 = 2
WREG = 2
C
=?
After Instruction
REG1 = 0
WREG = 2
C
=1
Z
=1
; result is zero
Example 3:
Before Instruction
REG1 = 1
WREG = 2
C
=?
After Instruction
REG1 = FF
WREG = 2
C
=0
Z
=0
; result is negative
SUBWFB
Subtract WREG from f with
Borrow
Syntax:
[ label ] SUBWFB f,d
Operands:
0 ≤ f ≤ 255
d ∈ [0,1]
Operation:
(f) – (W) – C → (dest)
Status Affected: OV, C, DC, Z
Encoding:
0000 001d ffff ffff
Description:
Subtract WREG and the carry flag
(borrow) from register 'f' (2’s comple-
ment method). If 'd' is 0 the result is
stored in WREG. If 'd' is 1 the result is
stored back in register 'f'.
Words:
1
Cycles:
1
Q Cycle Activity:
Q1
Decode
Q2
Read
register 'f'
Q3
Process
Data
Q4
Write to
destination
Example 1:
SUBWFB REG1, 1
Before Instruction
REG1 = 0x19
WREG = 0x0D
C
=1
(0001 1001)
(0000 1101)
After Instruction
REG1 =
WREG =
C
=
Z
=
0x0C
0x0D
1
0
(0000 1011)
(0000 1101)
; result is positive
Example2:
SUBWFB REG1,0
Before Instruction
REG1 = 0x1B
WREG = 0x1A
C
=0
(0001 1011)
(0001 1010)
After Instruction
REG1 =
WREG =
C
=
Z
=
0x1B
0x00
1
1
(0001 1011)
; result is zero
Example3:
SUBWFB REG1,1
Before Instruction
REG1 = 0x03
WREG = 0x0E
C
=1
(0000 0011)
(0000 1101)
After Instruction
REG1 =
WREG =
C
=
Z
=
0xF5
0x0E
0
0
(1111 0100) [2’s comp]
(0000 1101)
; result is negative
DS30264A-page 212
© 1997 Microchip Technology Inc.