Datasheet
PIC16F8X
DS30430B-page 64 1996 Microchip Technology Inc.
RETURN Return from Subroutine
Syntax: [
label
] RETURN
Operands: None
Operation: TOS → (PC)
Status Affected: None
Encoding:
00 0000 0000 1000
Description:
Return from subroutine. The stack is
popped and the Top of Stack (TOS) is
loaded into the program counter. This
is a two cycle instruction.
Words: 1
Cycles: 2
Example
RETURN
After Interrupt
PC = TOS
RLF Rotate Left f through Carry
Syntax: [
label
] RLF f,d
Operands: 0 ≤ f ≤ 127
d ∈ [0,1]
Operation: See description below
Status Affected: C
Encoding:
00 1101 dfff ffff
Description: The contents of register 'f' are
rotated one bit to the left through
the Carry Flag. If 'd' is 0 the result
is placed in the W register. If 'd' is
1 the result is stored back in reg-
ister 'f'.
Words: 1
Cycles: 1
Example
RLF REG1,0
Before Instruction
REG1 = 1110 0110
C=0
After Instruction
REG1 = 1110 0110
W=1100 1100
C=1
Register fC
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
Encoding:
00 1100 dfff ffff
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'.
Words: 1
Cycles: 1
Example
RRF REG1,0
Before Instruction
REG1 = 1110 0110
C=0
After Instruction
REG1 = 1110 0110
W=0111 0011
C=1
SLEEP
Go into Standby Mode
Syntax: [
label
] SLEEP
Operands: None
Operation: 00h → WDT,
0 → WDT prescaler
1 → T
O,
0 → PD
Status Affected: TO, PD
Encoding:
00 0000 0110 0011
Description: The power down status bit (PD)
is cleared. Time-out status bit
(T
O) is set. Watchdog Timer and
its prescaler are cleared.
The processor is put into SLEEP
mode with the oscillator
stopped.
Words: 1
Cycles: 1
Example: SLEEP
Register fC