OpCodes.Conv_U2 Campo

Definição

Converte o valor na parte superior da pilha unsigned int16de avaliação e estende-o para int32.

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

Valor do campo

Comentários

A tabela a seguir lista o formato de assembly hexadecimal e Microsoft linguagem intermediária (MSIL) da instrução, juntamente com um breve resumo de referência:

Formato Formato de assembly Description
D1 conv.u2 Converta em int16, efetuando int32 push na pilha.

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

  1. value é empurrado para a pilha.

  2. value é retirado da pilha e a operação de conversão é tentada.

  3. Se a conversão for bem-sucedida, o valor resultante será enviado por push para a pilha.

O conv.u2 opcode converte a value parte superior da pilha para o tipo especificado no opcode e deixa esse valor convertido na parte superior da pilha. Valores inteiros de menos de 4 bytes são estendidos para int32 quando são carregados conv.i na pilha de avaliação (a menos que ou conv.u seja usado, nesse caso o resultado também native inté). Os valores de ponto flutuante são convertidos no F tipo.

A conversão de números de ponto flutuante em valores inteiros trunca o número em direção a zero. Ao converter de um float64 para um float32, a precisão pode ser perdida. Se value for muito grande para caber em um float32 (F)infinito positivo (se value for positivo) ou infinito negativo (se value for negativo) será retornado. Se ocorrer estouro convertendo um tipo inteiro em outro, os bits de ordem alta serão truncados. Se o resultado for menor que um int32, o valor será estendido para preencher o slot.

Se ocorrer estouro convertendo um tipo de ponto flutuante em um inteiro, o valor retornado não será especificado.

Nenhuma exceção é gerada ao usar esse campo. Consulte Conv_Ovf_I2 e Conv_Ovf_I2_Un para obter instruções equivalentes que gerarão uma exceção quando o tipo de resultado não puder representar corretamente o valor do resultado.

A sobrecarga do método Emit a seguir pode usar o conv.u2 opcode:

Aplica-se a