English
Language : 

PIC32MX440F256H-80I Datasheet, PDF (51/646 Pages) Microchip Technology – 64/100-Pin General Purpose and USB 32-Bit Flash Microcontrollers
PIC32MX3XX/4XX
TABLE 3-1:
Instruction
INS
J
JAL
JALR
JALR.HB
JALRC
JR
JR.HB
JRC
LB
LBU
LH
LHU
LL
LUI
LW
LWPC
LWL
LWR
MADD
MADDU
MFC0
MFHI
MFLO
MOVN
MOVZ
MSUB
MSUBU
MTC0
MTHI
MTLO
MUL
MULT
MULTU
PIC32MX3XX/4XX INSTRUCTION SET (CONTINUED)
Description
Function
Insert Bit Field
Rt = InsertField(Rs, Rt, pos,
size)
Unconditional Jump
PC = PC[31:28> || offset<<2
Jump and Link
GPR[31> = PC + 8
PC = PC[31:28> || offset<<2
Jump and Link Register
Jump and Link Register with Hazard Barrier
Rd = PC + 8
PC = Rs
Like JALR, but also clears execution and
instruction hazards
Jump and Link Register Compact – do not execute
instruction in jump delay slot (MIPS16e™ only)
Rd = PC + 2
PC = Rs
Jump Register
PC = Rs
Jump Register with Hazard Barrier
Like JR, but also clears execution and
instruction hazards
Jump Register Compact – do not execute instruction in PC = Rs
jump delay slot (MIPS16e only)
Load Byte
Rt = (byte)Mem[Rs+offset>
Unsigned Load Byte
Rt = (ubyte))Mem[Rs+offset>
Load Halfword
Rt = (half)Mem[Rs+offset>
Unsigned Load Halfword
Rt = (uhalf)Mem[Rs+offset>
Load Linked Word
Rt = Mem[Rs+offset>
LL = 1
LLAdr = Rs + offset
Load Upper Immediate
Rt = immediate << 16
Load Word
Load Word, PC relative
Rt = Mem[Rs+offset>
Rt = Mem[PC+offset>
Load Word Left
See Architecture Reference Manual
Load Word Right
See Architecture Reference Manual
Multiply-Add
HI | LO += (int)Rs * (int)Rt
Multiply-Add Unsigned
HI | LO += (uns)Rs * (uns)Rt
Move From Coprocessor 0
Rt = CPR[0, Rd, sel>
Move From HI
Rd = HI
Move From LO
Rd = LO
Move Conditional on Not Zero
if Rt ¼ 0 then
Rd = Rs
Move Conditional on Zero
Multiply-Subtract
if Rt = 0 then
Rd = Rs
HI | LO -= (int)Rs * (int)Rt
Multiply-Subtract Unsigned
HI | LO -= (uns)Rs * (uns)Rt
Move To Coprocessor 0
CPR[0, n, Sel> = Rt
Move To HI
HI = Rs
Move To LO
LO = Rs
Multiply with register write
Integer Multiply
HI | LO =Unpredictable
Rd = ((int)Rs * (int)Rt)31..0
HI | LO = (int)Rs * (int)Rd
Unsigned Multiply
HI | LO = (uns)Rs * (uns)Rd
© 2008 Microchip Technology Inc.
Preliminary
DS61143E-page 49