SSAT、USAT

任意のビット位置に対する符号付きサチュレート命令と符号なしサチュレート命令です。オプションとして、サチュレート前にシフトを実行できす。

SSAT は、符号付きの値を符号付き範囲内でサチュレートします。

USAT は、符号付きの値を符号なし範囲内でサチュレートします。

Show/hide構文

op{cond} Rd, #sat, Rm{, shift}

各パラメータには以下の意味があります。

op

SSAT または USAT を指定します。

cond

任意の条件コードを指定します。

Rd

デスティネーションレジスタを指定します。

sat

サチュレートさせるビット位置を指定します。SSAT の場合は 1 ~ 32、USAT の場合は 0 ~ 31 の値となります。

Rm

オペランドを格納するレジスタを指定します。

shift

任意に指定できるシフトです。以下のいずれかを指定する必要があります。

ASR #n

n の範囲は 1 ~ 32(ARM)または 1 ~ 31(Thumb)です。

LSL #n

n の範囲は 0 ~ 31 です。

Show/hide演算

SSAT 命令は指定されたシフトを行い、その後に符号付き範囲 -2sat-1 ≤ x ≤ 2sat-1 -1 でサチュレートします。

USAT 命令は指定されたシフトを行い、その後に符号なし範囲 0 ≤ x ≤ 2sat - 1 でサチュレートします。

Show/hideレジスタの制約条件

レジスタには PC は使用できません。

SP は ARM 命令で使用できますが、これらは ARMv6T2 以降では非推奨です。Thumb 命令では SP は使用できません。

Show/hide条件フラグ

サチュレーションが発生すると、これらの命令によって Q フラグが設定されます。Q フラグの状態を読み出すには、MRS 命令を使用します。

Show/hideアーキテクチャ

これらの ARM 命令は、ARMv6 以降で使用できます。

これらの 32 ビット Thumb 命令は、ARMv6T2 以降で使用できます。

これらの命令の 16 ビット Thumb バージョンはありません。

Show/hide

    SSAT    r7, #16, r7, LSL #4
    USATNE  r0, #7, r5

Show/hide関連項目

Copyright © 2010-2011 ARM. All rights reserved.ARM DUI 0489EJ
Non-ConfidentialID081711