OpCodes.Div Campo

Definição

Divide dois valores e empurra o resultado como 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 de Campo

Observações

A tabela seguinte lista o formato hexadecimal e assembly da Microsoft Intermediate Language (MSIL) da instrução, juntamente com um breve resumo de referência:

Formato Formato de Montagem Description
5 B div Divide dois valores para devolver um resultado quociente ou em ponto flutuante.

O comportamento de transição da pilha, por ordem sequencial, é:

  1. value1 é empurrado para a pilha.

  2. value2 é empurrado para a pilha.

  3. value2 e value1 são extraídos da pilha; value1 é dividido por value2.

  4. O resultado é empurrado para a pilha.

result = value1 Valor div2 satisfaz as seguintes condições:

| result | = | value1 | / | value2 |, e:

signo(result) = +, se signo(value1) = signo(value2), ou -, se signo(value1) ~= signo(value2)

A div instrução calcula o resultado e empurra-o para a pilha.

A divisão inteira trunca em direção a zero.

A divisão de um número finito por zero produz o valor infinito corretamente assinado.

Dividir zero por zero ou infinito por infinito produz o valor NaN (Não-Um-Número). Qualquer número dividido por infinito produzirá um valor zero.

As operações integrais lançam ArithmeticException se o resultado não puder ser representado no tipo de resultado. Isto pode acontecer se value1 for o valor negativo máximo, e value2 for -1.

As operações integrais lançam DivideByZeroException se value2 for zero.

Note que em plataformas baseadas em Intel, an OverflowException é lançado ao calcular (minint div -1). As operações de ponto flutuante nunca lançam uma exceção (produzem NaNs ou infinitos em vez disso).

O seguinte Emit método de sobrecarga pode usar o div opcode:

Aplica-se a