Vault 7: Projects

This publication series is about specific projects related to the Vault 7 main publication.

© 2005-2011 Microchip Technology Inc. DS70157F-page 375
Section 5. Instruction Descriptions
Instruction
Descriptions
5
RLC
Rotate Left Ws through Carry
Implemented in: PIC24F PIC24H PIC24E dsPIC30F dsPIC33F dsPIC33E
X X X X X X
Syntax: {label:} RLC{.B} Ws, Wd
[Ws], [Wd]
[Ws++], [Wd++]
[Ws--], [Wd--]
[++Ws], [++Wd]
[--Ws], [--Wd]
Operands: Ws [W0 ... W15]
Wd [W0 ... W15]
Operation: For byte operation:
(C) Wd<0>
(Ws<6:0>) Wd<7:1>
(Ws<7>) C
For word operation:
(C) Wd<0>
(Ws<14:0>) Wd<15:1>
(Ws<15>) C
Status Affected: N, Z, C
Encoding: 1101 0010 1Bqq qddd dppp ssss
Description: Rotate the contents of the source register Ws one bit to the left through
the Carry flag and place the result in the destination register Wd. The
Carry flag of the STATUS register is shifted into the Least Significant bit
of Wd, and it is then overwritten with the Most Significant bit of Ws.
Either register direct or indirect addressing may be used for Ws and Wd.
The ‘B’ bit selects byte or word operation (‘0’ for word, ‘1’ for byte).
The ‘q’ bits select the destination Address mode.
The ‘d’ bits select the destination register.
The ‘p’ bits select the source Address mode.
The ‘s’ bits select the source register.
Note: The extension .B in the instruction denotes a byte operation
rather than a word operation. You may use a .W extension to
denote a word operation, but it is not required.
Words: 1
Cycles: 1
C
Example 1:
RLC.B W0, W3 ; Rotate Left w/ C (W0) (Byte mode)
; Store the result in W3
Before
Instruction
After
Instruction
W0 9976 W0 9976
W3 5879 W3 58ED
SR 0001 (C = 1) SR 0009 (N = 1)

e-Highlighter

Click to send permalink to address bar, or right-click to copy permalink.

Un-highlight all Un-highlight selectionu Highlight selectionh