Individual Instruction Descriptions
4-137Assembly Language Instructions
4.14.42 MULAPLS Multiply String and Accumulate Result
Syntax
[label] name dest, src [, mod] Clock, clk Word, w With RPT, clk Class
MULAPLS An, {adrs} Table 4–46 Table 4–46 1b
MULAPLS An[~], An[~] n
S
+3 1 n
R
+3 3
Execution 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
MULAPLS An, {adrs}
0 1 1 0 1 1 1 An adrs
x dma16 (for direct) or offset16 (long relative) [see section 4.13]
MULAPL S An[~], An[~], [next A] 1 1 1 0 0 1 1 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 ((n
s
+ 3) × 16)-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 string.
Syntax Description
MULAPLS {adrs} Multiply MR by RAM string, add PL to An
MULAPLS An[~], An[~] [, next A] Multiply MR by An[~] string, add PL to An[~]
See Also MULAPL, MULSPL, MULSPLS, MULTPL, MULTPLS
Example 4.14.42.1 MULAPLS A0, *R3++
Multiply MR with the content of data memory word string store at byte location pointed by R3, add
accumulator string A0 to PL, and store result in accumulator A0 string. Increment R3 by 2.
Example 4.14.42.2 MULAPLS A2, A2~, ––A
Multiply MR register to accumulator A2~, add accumulator string A2 to PL and store result to
accumulator A2.