Description

This instruction performs 8-bit × 8-bit → 16-bit multiplication of a signed and an unsigned number.

  Rd   Rr   R1 R0  
  Multiplicand   Multiplier Product High Product Low  
  8   8   16  

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

This instruction is not available in all devices. Refer to the device specific instruction set summary.

Operation:

(i)

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

Syntax:

Operands:

Program Counter:

(i)

MULSU Rd,Rr

16 ≤ d ≤ 23, 16 ≤ r ≤ 23

PC ← PC + 1

16-bit Opcode:

0000 0011 0ddd 0rrr