ARM Instruction Set: Multiplication Instructions
Assembler input:
MUL ,,
MLA ,,,
Assembler output:
High byte as standard
Sixth nybble contains multiply subinstruction code and S flag
Bits 21-23 (3-bit cardinal) are multiply subinstruction code
Bit 20 is S flag
Fifth nybble is destination register
Fourth nybble is 0 in MUL, and augend register in MLA
Third nybble is second factor
Bit 7 is 1 (indicating multiply instruction, NOT AL instruction)
Bits 5-6 are 0
Bit 4 is 1 (indicating that low nybble is a register)
Low nybble is first factor
The following are valid subinstruction codes:
Value Base instruction mnemonic
0 MUL
1 MLA