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 virgola mobile (tipo F) o quoziente (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 di assembly MSIL (Intermediate Language) esadecimale e Microsoft istruzione, insieme a un breve riepilogo di riferimento:
| Formato | Formato assembly | Description |
|---|---|---|
| 5B | div | Divide due valori per restituire un risultato quoziente o a virgola mobile. |
Il comportamento transitorio dello stack, in ordine sequenziale, è:
value1viene inserito nello stack.value2viene inserito nello stack.value2evalue1vengono estratte dallo stack;value1è diviso pervalue2.Il risultato viene inserito nello stack.
result
=
value1 div value2 soddisfa le condizioni seguenti:
|
result | = | value1 | / | value2 |, e:
sign(result) = +, if sign(value1) = sign(value2) o -, if sign(value1) ~= sign(value2)
L'istruzione div calcola il risultato e lo inserisce nello stack.
La divisione di interi viene troncata verso zero.
La divisione di un numero finito per zero produce il valore infinito con segno corretto.
Dividendo zero per zero o infinito per infinito produce il valore NaN (Not-A-Number). Qualsiasi numero diviso per infinito produrrà un valore zero.
Le operazioni integrali generano un'eccezione 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 generata un'eccezione OverflowException durante il calcolo (minint div -1). Le operazioni a virgola mobile non generano mai un'eccezione (producono invece nan o infiniti).
L'overload del metodo seguente Emit può usare il div codice operativo: