Ler em inglês

Compartilhar via


OpCodes.Conv_Ovf_U1 Campo

Definição

Converte o valor com sinal no topo da pilha de avaliação em unsigned int8 e estende-o para int32, gerando OverflowException no estouro.

public static readonly System.Reflection.Emit.OpCode Conv_Ovf_U1;

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
B4 conv.ovf.u1 Converta em um unsigned int8 (na pilha como int32) e gere uma exceção no estouro.

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

  1. value é enviado por push para a pilha.

  2. value é exibido da pilha e a operação de conversão é tentada. Se ocorrer estouro, uma exceção será gerada.

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

O conv.ovf.u1 opcode converte o value na parte superior da pilha para o tipo especificado no opcode e coloca o valor convertido na parte superior da pilha. Se o valor for muito grande ou muito pequeno para ser representado pelo tipo de destino, uma exceção será gerada.

Conversões de números de ponto flutuante em valores inteiros truncam o número em direção a zero. Observe que valores inteiros de menos de 4 bytes são estendidos para int32 quando são carregados na pilha de avaliação (a menos que ou conv.ovf.u sejam usadosconv.ovf.i, nesse caso, o resultado também native inté ).

OverflowException será gerado se o resultado não puder ser representado no tipo de resultado.

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

Aplica-se a

Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0