次の方法で共有


OpCodes.Div フィールド

定義

2 つの値の除算を実行し、結果を浮動小数点値 (F 型) または商 (int32 型) として評価スタックにプッシュします。

public: static initonly System::Reflection::Emit::OpCode Div;
public static readonly System.Reflection.Emit.OpCode Div;
 staticval mutable Div : System.Reflection.Emit.OpCode
Public Shared ReadOnly Div As OpCode 

フィールド値

注釈

次の表に、命令の 16 進数と Microsoft Intermediate Language (MSIL) アセンブリ形式と、簡単な参照の概要を示します。

形式 アセンブリ形式 説明
5B div 2 つの値を除算して商または浮動小数点の結果を返します。

スタック遷移の動作は、順番に次のようになります。

  1. value1 がスタックにプッシュされます。

  2. value2 がスタックにプッシュされます。

  3. value2value1 はスタック value1 からポップされます。は で除算されます value2

  4. 結果がスタックにプッシュされます。

result = value1 div value2 は、次の条件を満たします。

| result |= | value1 | / | value2 |、および:

sign(result) = +, if sign(value1) = sign(value2), or -, if sign(value1) ~= sign(value2)

命令によって div 結果が計算され、スタックにプッシュされます。

整数除算は 0 に切り捨てられます。

有限数を 0 で除算すると、正しく符号付き無限値が生成されます。

0 を 0 または無限大で除算すると、NaN (Not-A-Number) 値が生成されます。 無限大で除算された数値は、0 の値を生成します。

結果を結果の型で表すことができない場合、整数演算は をスロー ArithmeticException します。 これは、 が負の最大値で、 value2 が -1 の場合value1に発生する可能性があります。

が 0 の場合value2、整数演算は スローDivideByZeroExceptionされます。

Intel ベースのプラットフォームでは、コンピューティング時に が OverflowException スローされることに注意してください (minint div -1)。 浮動小数点演算は例外をスローしません (代わりに NaN または無限大を生成します)。

Emit のメソッド オーバーロードでは、オペコードを div 使用できます。

適用対象