SEL

APSR の GE フラグの状態に基づいて、各オペランドからバイトを選択する命令です。

Show/hide構文

SEL{cond} {Rd}, Rn, Rm

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

cond

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

Rd

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

Rn

第 1 オペランドを保持するレジスタを指定します。

Rm

第 2 オペランドを保持するレジスタを指定します。

Show/hide演算

SEL 命令は、APSR の GE フラグに基づいて、Rn または Rm からバイトを選択します。

  • GE[0] が設定されている場合は、Rd[7:0]Rn[7:0] から取得され、それ以外の場合は Rm[7:0] から取得されます。

  • GE[1] が設定されている場合は、Rd[15:8]Rn[15:8] から取得され、それ以外の場合は Rm[15:8] から取得されます。

  • GE[2] が設定されている場合は、Rd[23:16]Rn[23:16] から取得され、それ以外の場合は Rm[23:16] から取得されます。

  • GE[3] が設定されている場合は、Rd[31:24]Rn[31:24] から取得され、それ以外の場合は Rm[31:24] から取得されます。

Show/hide使用法

SEL 命令は、符号付き並列命令の後に使用します。この命令を使用して、複数バイトデータまたはハーフワードデータの最大値や最小値を選択できます。

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

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

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

Show/hide条件フラグ

この命令によるフラグへの影響はありません。

Show/hideアーキテクチャ

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

これらの 32 ビット Thumb 命令は、ARMv6T2 以降で使用できます。ARMv7-M アーキテクチャでは、これらは ARMv7E-M 実装でだけ使用できます。

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

Show/hide

    SEL     r0, r4, r5
    SELLT   r4, r0, r4

以下の命令シーケンスは、R1R2 の各バイトの符号なし最小値と等しくなるように R4 の対応するバイトを設定します。

    USUB8    r4, r1, r2
    SEL      r4, r2, r1

Show/hide関連項目

Copyright © 2010-2011 ARM. All rights reserved.ARM DUI 0489FJ
Non-ConfidentialID111211