2 つの値が等しい場合は、ターゲット命令 (短い形式) に制御を転送します。
Public Shared ReadOnly Beq_S As OpCode
[C#]
public static readonly OpCode Beq_S;
[C++]
public: static OpCode Beq_S;
[JScript]
public static var Beq_S : OpCode;
解説
命令の 16 進数の形式、MSIL (Microsoft Intermediate Language) アセンブリ形式、および簡単な説明の一覧を次の表に示します。
形式 | アセンブリ形式 | 説明 |
---|---|---|
2E < int8 > | beq.s target | 2 つの値が等しい場合は、オフセット target でターゲット命令に分岐します (短い形式)。 |
スタックの遷移動作を順番に示すと、次のようになります。
- value1 がスタックにプッシュされます。
- value2 がスタックにプッシュされます。
- value2 と value1 がスタックからポップされます。 value1 と value2 が等しい場合は、分岐処理が実行されます。
beq.s 命令は、 value1 と value2 が等しい場合に指定したターゲット命令に制御を転送します。この効果は、 ceq 命令を実行してから、特定のターゲット命令に brtrue 分岐を実行する場合と同じです。ターゲット命令は、現在の命令に続く次の命令の先頭からの 1 バイト符号付きオフセットとして表されます。
使用できるオペランド型は、次に示すようにカプセル化されます。
ターゲット命令に 1 つ以上のプリフィックス コードがある場合は、最初のプリフィックスだけに制御を転送できます。
この命令では、try、catch、filter、finally の各ブロックの内外への制御の転送は実行できません。このような制御の転送は厳密に制限されており、制御を転送する場合は Leave 命令を使用する必要があります。
beq.s オペコードを使用できる Emit コンストラクタ オーバーロードを次に示します。
- ILGenerator.Emit(OpCode, Label)
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ