English
Language : 

DSPIC30F1010-20E Datasheet, PDF (226/286 Pages) Microchip Technology – dsPIC30F1010/202X Data Sheet
dsPIC30F1010/202X
TABLE 19-2: INSTRUCTION SET OVERVIEW (CONTINUED)
Base
Instr
#
Assembly
Mnemonic
Assembly Syntax
Description
# of
word
s
# of
cycles
Status Flags
Affected
34 EXCH
35 FBCL
36 FF1L
37 FF1R
38 GOTO
39 INC
40 INC2
41 IOR
42 LAC
43 LNK
44 LSR
45 MAC
46 MOV
47 MOVSAC
48 MPY
49 MPY.N
50 MSC
51 MUL
EXCH
FBCL
FF1L
FF1R
GOTO
GOTO
INC
INC
INC
INC2
INC2
INC2
IOR
IOR
IOR
IOR
IOR
LAC
Wns,Wnd
Ws,Wnd
Ws,Wnd
Ws,Wnd
Expr
Wn
f
f,WREG
Ws,Wd
f
f,WREG
Ws,Wd
f
f,WREG
#lit10,Wn
Wb,Ws,Wd
Wb,#lit5,Wd
Wso,#Slit4,Acc
LNK
#lit14
LSR
f
LSR
f,WREG
LSR
Ws,Wd
LSR
Wb,Wns,Wnd
LSR
Wb,#lit5,Wnd
MAC
Wm *
Wn,Acc,Wx,Wxd,Wy,Wyd,
AWB
MAC
Wm *
Wm,Acc,Wx,Wxd,Wy,Wyd
MOV
f,Wn
MOV
f
MOV
f,WREG
MOV
#lit16,Wn
MOV.b #lit8,Wn
MOV
Wn,f
MOV
Wso,Wdo
MOV
WREG,f
MOV.D
Wns,Wd
MOV.D
Ws,Wnd
MOVSAC Acc,Wx,Wxd,Wy,Wyd,AWB
MPY
Wm *
Wn,Acc,Wx,Wxd,Wy,Wyd
MPY
Wm *
Wm,Acc,Wx,Wxd,Wy,Wyd
MPY.N
Wm *
Wn,Acc,Wx,Wxd,Wy,Wyd
MSC
Wm *
Wm,Acc,Wx,Wxd,Wy,Wyd,
AWB
MUL.SS Wb,Ws,Wnd
MUL.SU Wb,Ws,Wnd
MUL.US Wb,Ws,Wnd
MUL.UU Wb,Ws,Wnd
MUL.SU Wb,#lit5,Wnd
MUL.UU Wb,#lit5,Wnd
MUL
f
Swap Wns with Wnd
1
Find Bit Change from Left (MSb) Side
1
Find First One from Left (MSb) Side
1
Find First One from Right (LSb) Side
1
Go to address
2
Go to indirect
1
f=f+1
1
WREG = f + 1
1
Wd = Ws + 1
1
f=f+2
1
WREG = f + 2
1
Wd = Ws + 2
1
f = f .IOR. WREG
1
WREG = f .IOR. WREG
1
Wd = lit10 .IOR. Wd
1
Wd = Wb .IOR. Ws
1
Wd = Wb .IOR. lit5
1
Load Accumulator
1
Link frame pointer
1
f = Logical Right Shift f
1
WREG = Logical Right Shift f
1
Wd = Logical Right Shift Ws
1
Wnd = Logical Right Shift Wb by Wns
1
Wnd = Logical Right Shift Wb by lit5
1
Multiply and Accumulate
1
Square and Accumulate
1
Move f to Wn
1
Move f to f
1
Move f to WREG
1
Move 16-bit literal to Wn
1
Move 8-bit literal to Wn
1
Move Wn to f
1
Move Ws to Wd
1
Move WREG to f
1
Move Double from W(ns):W(ns + 1) to Wd
1
Move Double from Ws to W(nd + 1):W(nd)
1
Prefetch and store accumulator
1
Multiply Wm by Wn to Accumulator
1
Square Wm to Accumulator
1
-(Multiply Wm by Wn) to Accumulator
1
Multiply and Subtract from Accumulator
1
{Wnd + 1, Wnd} = signed(Wb) * signed(Ws) 1
{Wnd + 1, Wnd} = signed(Wb) * unsigned(Ws) 1
{Wnd + 1, Wnd} = unsigned(Wb) * signed(Ws) 1
{Wnd + 1, Wnd} = unsigned(Wb) *
1
unsigned(Ws)
{Wnd + 1, Wnd} = signed(Wb) * unsigned(lit5) 1
{Wnd + 1, Wnd} = unsigned(Wb) *
1
unsigned(lit5)
W3:W2 = f * WREG
1
1 None
1C
1C
1C
2 None
2 None
1 C,DC,N,OV,Z
1 C,DC,N,OV,Z
1 C,DC,N,OV,Z
1 C,DC,N,OV,Z
1 C,DC,N,OV,Z
1 C,DC,N,OV,Z
1 N,Z
1 N,Z
1 N,Z
1 N,Z
1 N,Z
1 OA,OB,OAB,
SA,SB,SAB
1 None
1 C,N,OV,Z
1 C,N,OV,Z
1 C,N,OV,Z
1 N,Z
1 N,Z
1 OA,OB,OAB,
SA,SB,SAB
1 OA,OB,OAB,
SA,SB,SAB
1 None
1 N,Z
1 N,Z
1 None
1 None
1 None
1 None
1 N,Z
2 None
2 None
1 None
1 OA,OB,OAB,
SA,SB,SAB
1 OA,OB,OAB,
SA,SB,SAB
1 None
1 OA,OB,OAB,
SA,SB,SAB
1 None
1 None
1 None
1 None
1 None
1 None
1 None
DS70178C-page 224
Preliminary
© 2006 Microchip Technology Inc.