beautypg.com

41 mulapl multiply and accumulate result – Texas Instruments MSP50C6xx User Manual

Page 222

background image

Individual Instruction Descriptions

4-136

4.14.41

MULAPL

Multiply and Accumulate Result

Syntax

[label]

name

dest, src [, mod]

Clock, clk

Word, w

With RPT, clk

Class

MULAPL

An, {adrs}

Table 4–46

Table 4–46

1b

MULAPL

An[~], An[~] [, next A]

1

1

n

R

+3

3

Execution

[premodify AP if mod specified]
PH,PL

MR * src

dest

dest + PL

PC

PC + 1

Flags Affected

OF, SF, ZF, CF are set accordingly
src is {adrs}:

TAG bit is set accordingly

Opcode

Instructions

16

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

MULAPL An, {adrs}

0

1

1

0

1

1

0

An

adrs

x

dma16 (for direct) or offset16 (long relative) [see section 4.13]

MULAPL An[~], An[~], [next A]

1

1

1

0

0

next A

An

1

1

0

0

1

0

A~

~A

Description

Perform multiplication of multiply register (MR) and value of src. The 16 MSBs
of the 32-bit product are stored in the product high (PH) register. The 16 LSBs
of the product (contained in product low (PL) register) added to dest. Certain
restriction applies to the use of this instruction when interrupts are occuring in
the background. See Section 4.8 for more detail.

Syntax

Description

MULAPL {adrs}

Multiply MR by RAM word, add PL to An

MULAPL An[~], An[~] [, next A]

Multiply MR by An[~] word, add PL to An[~]

See Also

MULAPLS, MULSPL, MULSPLS, MULTPL, MULTPLS

Example 4.14.41.1

MULAPL A0, *R3++

Multiply MR with the content of data memory word stored at byte location pointed by R3, add PL to
accumulator A0, and store result in accumulator A0. Increment R3 by 2.

Example 4.14.41.2

MULAPL A2, A2~, ––A

Multiply MR register to accumulator A2~, add PL to accumulator A2, and store result to accumulator
A2.