OpCodes.Div Campo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Divide due valori e inserisce il risultato come valore in virgola mobile (di tipo F) o quoziente (di tipo int32) nello stack di valutazione.
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
Valore del campo
Commenti
La tabella seguente elenca il formato dell'assembly esadecimale e Microsoft Intermediate Language (MSIL), insieme a un breve riepilogo di riferimento:
| Formato | Formato assembly | Descrizione |
|---|---|---|
| 5B | div | Divide due valori per restituire un risultato a virgola mobile o a virgola mobile. |
Il comportamento di transizione dello stack, in ordine sequenziale, è:
value1viene eseguito il push nello stack.value2viene eseguito il push nello stack.value2evalue1vengono estratte dallo stack;value1è diviso davalue2.Il risultato viene eseguito il push nello stack.
result
=
value1 il valore div2 soddisfa le condizioni seguenti:
|
result | = | value1 | / | value2 |, e:
sign(result) = +, if sign() = sign(value2value1) o -, if sign() ~= sign(value2value1)
L'istruzione div calcola il risultato e lo esegue nello stack.
La divisione integer tronca verso zero.
La divisione di un numero finito per zero produce il valore infinito firmato correttamente.
La divisione zero per zero o infinito per infinito genera il valore NaN (Not-A-Number). Qualsiasi numero diviso per infinito produrrà un valore zero.
Le operazioni integrali generano ArithmeticException se il risultato non può essere rappresentato nel tipo di risultato. Ciò può verificarsi se value1 è il valore negativo massimo e value2 è -1.
Le operazioni integrali generano DivideByZeroException se value2 è zero.
Si noti che nelle piattaforme basate su Intel viene generato quando OverflowException si esegue il calcolo (minint div -1). Le operazioni a virgola mobile non generano mai un'eccezione (producono invece NaNs o infiniti).
L'overload del metodo seguente Emit può usare il div codice opcode: