6.78.1 Description

This instruction performs 8-bit × 8-bit → 16-bit signed multiplication.

RdRrR1R0
Multiplicand×MultiplierProduct HighProduct Low
8816

The multiplicand Rd and the multiplier Rr are two registers containing signed numbers. The 16-bit signed product is placed in R1 (high byte) and R0 (low byte).

This instruction is not available on all devices. Refer to Appendix A.

Operation:

(i)

R1:R0 ← Rd × Rr (signed ← signed × signed)

Syntax:

Operands:

Program Counter:

(i)

MULS Rd,Rr

16 ≤ d ≤ 31, 16 ≤ r ≤ 31

PC ← PC + 1

16-bit Opcode:

00000010ddddrrrr