
2011-2012 Microchip Technology Inc.
Preliminary
DS41579C-page 361
PIC16(L)F1782/3
RRF
Rotate Right f through Carry
Syntax:
[ label ]
RRF f,d
Operands:
0
f 127
d
[0,1]
Operation:
See description below
Status Affected:
C
Description:
The contents of register ‘f’ are rotated
one bit to the right through the Carry
flag. If ‘d’ is ‘0’, the result is placed in
the W register. If ‘d’ is ‘1’, the result is
placed back in register ‘f’.
SLEEP
Enter Sleep mode
Syntax:
[ label ]SLEEP
Operands:
None
Operation:
00h
WDT,
0 WDT prescaler,
1 TO,
0 PD
Status Affected:
TO, PD
Description:
The power-down Status bit, PD is
cleared. Time-out Status bit, TO is
set. Watchdog Timer and its pres-
caler are cleared.
The processor is put into Sleep mode
with the oscillator stopped.
Register f
C
SUBLW
Subtract W from literal
Syntax:
[ label ]SUBLW k
Operands:
0
k 255
Operation:
k - (W)
W)
Status Affected:
C, DC, Z
Description:
The W register is subtracted (2’s com-
plement method) from the eight-bit
literal ‘k’. The result is placed in the W
register.
SUBWF
Subtract W from f
Syntax:
[ label ]
SUBWF f,d
Operands:
0
f 127
d
[0,1]
Operation:
(f) - (W)
destination)
Status Affected:
C, DC, Z
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.
SUBWFB
Subtract W from f with Borrow
Syntax:
SUBWFB
f {,d}
Operands:
0
f 127
d
[0,1]
Operation:
(f) – (W) – (B)
dest
Status Affected:
C, DC, Z
Description:
Subtract W and the BORROW flag
(CARRY) from register ‘f’ (2’s comple-
ment method). If ‘d’ is ‘0’, the result is
stored in W. If ‘d’ is ‘1’, the result is
stored back in register ‘f’.
C = 0
W
k
C = 1
W
k
DC = 0
W<3:0>
k<3:0>
DC = 1
W<3:0>
k<3:0>
C = 0
W
f
C = 1
W
f
DC = 0
W<3:0>
f<3:0>
DC = 1
W<3:0>
f<3:0>