Vault 7: Projects
This publication series is about specific projects related to the Vault 7 main publication.
© 2005-2011 Microchip Technology Inc. DS70157F-page 323
Section 5. Instruction Descriptions
Instruction
Descriptions
5
MUL.UU
Integer 16x16-bit Unsigned Short Literal Multiply with
Accumulator Destination
Implemented in: PIC24F PIC24H PIC24E dsPIC30F dsPIC33F dsPIC33E
X
Syntax: {label:} MUL.UU Wb, #lit5, A
B
Operands: Wb ∈ [W0 ... W15]
lit5 ∈ [0 ... 31]
ACC ∈ [A, B]
Operation: unsigned (Wb) * unsigned (lit5) → ACC(A or B)
Status Affected: None
Encoding:
1011 1000 0www w111 A11k kkkk
Description: Performs a 16-bit x 16-bit signed multiply with a 32-bit result, which is
stored in one of the DSP engine accumulators, ACCA or ACCB. The
32-bit result is zero extended to bit 39 prior to being loaded into the
target accumulator.
The source operands are treated as integer or fractional values
depending upon the operating mode of the DSP engine (as defined by
the IF bit in CORCON<0>). Both source operands are treated as
unsigned values.
The ‘w’ bits select the address of the base register.
The ‘k’ bits select the 5-bit literal.
The ‘A’ bit selects the destination accumulator for the product.
Note 1: This instruction operates in Word mode only.
2: The state of the multiplier mode bits (US<1:0> in CORCON)
have no effect upon the operation of this instruction.
Words: 1
Cycles: 1
Example 1:
MUL.UU W8, #0x02, A
Before
Instruction
After
Instruction
W8 0042 W8 0042
Acc A 00 0000 0000 Acc A 00 0000 0084
SR 0000 SR 0000
Protego_Release_01_05-Related-OEM-Documentation-PIC24FJ64GA004-Programmers_Reference_Manual.pdf