OpCodes.Conv_U8 Campo

Definição

Converte o valor no topo da pilha de avaliação para unsigned int64, e estende-o para int64.

public: static initonly System::Reflection::Emit::OpCode Conv_U8;
public static readonly System.Reflection.Emit.OpCode Conv_U8;
 staticval mutable Conv_U8 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_U8 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
6E conv.u8 Converter para int64, empurrando int64 para a pilha.

O comportamento de transição da pilha, por 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 é empurrado para a pilha.

O conv.u8 opcode converte o topo value da pilha para o tipo especificado no opcode, deixando esse valor convertido no topo da pilha. Valores inteiros inferiores a 4 bytes são estendidos até int32 quando são carregados na pilha de avaliação (a menos que conv.i ou conv.u seja usado, caso em que o resultado também native inté ). Os valores de vírgula flutuante são convertidos para o F tipo.

A conversão de números de vírgula flutuante para valores inteiros trunca o número em direção a zero. Ao converter de an float64 para um float32, a precisão pode ser perdida. Se value for demasiado grande para caber num float32 (F), o infinito positivo (se value for positivo) ou o infinito negativo (se value for negativo) é devolvido. Se ocorrer um transbordamento ao converter um tipo inteiro para outro, os bits de ordem superior são truncados. Se o resultado for menor que um int32, o valor é estendido por sinal para preencher o espaço.

Se ocorrer um transbordamento ao converter um tipo de ponto flutuante num inteiro, o valor devolvido não é especificado.

Nunca são feitas exceções ao usar este campo. Ver Conv_Ovf_I8 e Conv_Ovf_I8_Un para instruções equivalentes que lançam uma exceção quando o tipo de resultado não pode representar corretamente o valor do resultado.

O seguinte Emit método de sobrecarga pode usar o conv.u8 opcode:

Aplica-se a