Datasheet

dsPIC30F6010A/6015
DS70150E-page 168 © 2011 Microchip Technology Inc.
TABLE 22-2: INSTRUCTION SET OVERVIEW
Base
Instr
#
Assembly
Mnemonic
Assembly Syntax Description
# of
words
# of
cycles
Status Flags
Affected
1 ADD ADD Acc Add Accumulators 1 1 OA,OB,SA,SB
ADD
f
f = f + WREG 1 1 C,DC,N,OV,Z
ADD
f,WREG
WREG = f + WREG 1 1 C,DC,N,OV,Z
ADD
#lit10,Wn
Wd = lit10 + Wd 1 1 C,DC,N,OV,Z
ADD
Wb,Ws,Wd
Wd = Wb + Ws 1 1 C,DC,N,OV,Z
ADD
Wb,#lit5,Wd
Wd = Wb + lit5 1 1 C,DC,N,OV,Z
ADD
Wso,#Slit4,Acc
16-bit Signed Add to Accumulator 1 1 OA,OB,SA,SB
2 ADDC ADDC
f
f = f + WREG + (C) 1 1 C,DC,N,OV,Z
ADDC
f,WREG
WREG = f + WREG + (C) 1 1 C,DC,N,OV,Z
ADDC
#lit10,Wn
Wd = lit10 + Wd + (C) 1 1 C,DC,N,OV,Z
ADDC
Wb,Ws,Wd
Wd = Wb + Ws + (C) 1 1 C,DC,N,OV,Z
ADDC
Wb,#lit5,Wd
Wd = Wb + lit5 + (C) 1 1 C,DC,N,OV,Z
3 AND AND
f
f = f .AND. WREG 1 1 N,Z
AND
f,WREG
WREG = f .AND. WREG 1 1 N,Z
AND
#lit10,Wn
Wd = lit10 .AND. Wd 1 1 N,Z
AND
Wb,Ws,Wd
Wd = Wb .AND. Ws 1 1 N,Z
AND
Wb,#lit5,Wd
Wd = Wb .AND. lit5 1 1 N,Z
4 ASR ASR
f
f = Arithmetic Right Shift f 1 1 C,N,OV,Z
ASR
f,WREG
WREG = Arithmetic Right Shift f 1 1 C,N,OV,Z
ASR
Ws,Wd
Wd = Arithmetic Right Shift Ws 1 1 C,N,OV,Z
ASR
Wb,Wns,Wnd
Wnd = Arithmetic Right Shift Wb by Wns 1 1 N,Z
ASR
Wb,#lit5,Wnd
Wnd = Arithmetic Right Shift Wb by lit5 1 1 N,Z
5 BCLR BCLR
f,#bit4
Bit Clear f 1 1 None
BCLR
Ws,#bit4
Bit Clear Ws 1 1 None
6 BRA BRA
C,Expr
Branch if Carry 1 1 (2) None
BRA
GE,Expr
Branch if greater than or equal 1 1 (2) None
BRA
GEU,Expr
Branch if unsigned greater than or equal 1 1 (2) None
BRA
GT,Expr
Branch if greater than 1 1 (2) None
BRA
GTU,Expr
Branch if unsigned greater than 1 1 (2) None
BRA
LE,Expr
Branch if less than or equal 1 1 (2) None
BRA
LEU,Expr
Branch if unsigned less than or equal 1 1 (2) None
BRA
LT,Expr
Branch if less than 1 1 (2) None
BRA
LTU,Expr
Branch if unsigned less than 1 1 (2) None
BRA
N,Expr
Branch if Negative 1 1 (2) None
BRA
NC,Expr
Branch if Not Carry 1 1 (2) None
BRA
NN,Expr
Branch if Not Negative 1 1 (2) None
BRA
NOV,Expr
Branch if Not Overflow 1 1 (2) None
BRA
NZ,Expr
Branch if Not Zero 1 1 (2) None
BRA
OA,Expr
Branch if Accumulator A overflow 1 1 (2) None
BRA
OB,Expr
Branch if Accumulator B overflow 1 1 (2) None
BRA
OV,Expr
Branch if Overflow 1 1 (2) None
BRA
SA,Expr
Branch if Accumulator A saturated 1 1 (2) None
BRA
SB,Expr
Branch if Accumulator B saturated 1 1 (2) None
BRA
Expr
Branch Unconditionally 1 2 None
BRA
Z,Expr
Branch if Zero 1 1 (2) None
BRA
Wn
Computed Branch 1 2 None
7 BSET BSET
f,#bit4
Bit Set f 1 1 None
BSET
Ws,#bit4
Bit Set Ws 1 1 None
8 BSW BSW.C
Ws,Wb
Write C bit to Ws<Wb> 1 1 None
BSW.Z
Ws,Wb
Write Z bit to Ws<Wb> 1 1 None
9 BTG BTG
f,#bit4
Bit Toggle f 1 1 None
BTG
Ws,#bit4
Bit Toggle Ws 1 1 None
10 BTSC BTSC
f,#bit4
Bit Test f, Skip if Clear 1 1
(2 or 3)
None
BTSC
Ws,#bit4
Bit Test Ws, Skip if Clear 1 1
(2 or 3)
None