You copied the Doc URL to your clipboard.

3.5.8. SXT and UXT

Sign extend and Zero extend.

Syntax

SXTB Rd, Rm
SXTH Rd, Rm
UXTB Rd, Rm
UXTH Rd, Rm

where:

Rd

Is the destination register.

Rm

Is the register holding the value to be extended.

Operation

These instructions extract bits from the resulting value:

  • SXTB extracts bits[7:0] and sign extends to 32 bits

  • UXTB extracts bits[7:0] and zero extends to 32 bits

  • SXTH extracts bits[15:0] and sign extends to 32 bits

  • UXTH extracts bits[15:0] and zero extends to 32 bits.

Restrictions

In these instructions, Rd and Rm must only specify R0-R7.

Condition flags

These instructions do not affect the flags.

Examples

    SXTH  R4, R6           ; Obtain the lower halfword of the
                           ; value in R6 and then sign extend to
                           ; 32 bits and write the result to R4.
    UXTB  R3, R1           ; Extract lowest byte of the value in R1 and zero
                           ; extend it, and write the result to R3
Was this page helpful? Yes No