OpCodes.Div Campo
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Divide dois valores e efetua o push do resultado como um ponto flutuante (tipo F
) ou quociente (tipo int32
) para a pilha de avaliação.
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
Valor do campo
Comentários
A tabela a seguir lista o formato de assembly hexadecimal e MSIL (Microsoft Intermediate Language) da instrução, juntamente com um breve resumo de referência:
Formatar | Formato de assembly | Descrição |
---|---|---|
5B | div | Divide dois valores para retornar um resultado de ponto flutuante ou quociente. |
O comportamento de transição da pilha, em ordem sequencial, é:
value1
é enviado por push para a pilha.value2
é enviado por push para a pilha.value2
evalue1
são exibidos da pilha;value1
é dividido porvalue2
.O resultado é enviado por push para a pilha.
result
=
value1
div value2 atende às seguintes condições:
|
result
| = | value1
| / | value2
|e:
sign(result
) = +, if sign(value1
) = sign(value2
), or -, if sign(value1
) ~= sign(value2
)
A div
instrução calcula o resultado e o envia por push na pilha.
A divisão de inteiros trunca em direção a zero.
A divisão de um número finito por zero produz o valor infinito assinado corretamente.
Dividir zero por zero ou infinito por infinito produz o valor NaN (Not-A-Number). Qualquer número dividido por infinito produzirá um valor zero.
As operações integrais serão geradas ArithmeticException se o resultado não puder ser representado no tipo de resultado. Isso pode acontecer se value1
for o valor negativo máximo e value2
for -1.
Operações integrais são geradas DivideByZeroException se value2
for zero.
Observe que, em plataformas baseadas em Intel, um OverflowException é gerado durante a computação (minint div -1). As operações de ponto flutuante nunca geram uma exceção (produzem NaNs ou infinitos).
A sobrecarga do método Emit a seguir pode usar o div
opcode: