OpCodes.Conv_Ovf_I2 Campo

Definición

Convierte el valor con signo situado en la parte superior de la pila de evaluación en un int16 con signo, lo extiende hasta int32 y produce OverflowException si se produce desbordamiento.

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

Valor de campo

OpCode

Comentarios

En la tabla siguiente se muestra el formato de ensamblado hexadecimal y del lenguaje intermedio de Microsoft (MSIL), junto con un breve resumen de referencia:

Formato Formato de ensamblado Descripción
B5 conv.ovf.i2 Convierta en ( int16 en la pila como int32) y genere una excepción en desbordamiento.

El comportamiento transitorio de la pila, en orden secuencial, es:

  1. value se inserta en la pila.

  2. value se extrae de la pila y se intenta realizar la operación de conversión. Si se produce un desbordamiento, se produce una excepción.

  3. Si la conversión se realiza correctamente, el valor resultante se inserta en la pila.

El conv.ovf.i2 código de operación convierte la value parte superior de la pila en el tipo especificado en el código de operación y coloca el valor convertido en la parte superior de la pila. Si el valor es demasiado grande o demasiado pequeño para representarse mediante el tipo de destino, se produce una excepción.

Las conversiones de números de punto flotante a valores enteros truncan el número hacia cero. Tenga en cuenta que los valores enteros de menos de 4 bytes se extienden a int32 cuando se cargan en la pila de evaluación (a menos conv.ovf.i que se usen o conv.ovf.u , en cuyo caso el resultado también native intes ).

OverflowException se produce si el resultado no se puede representar en el tipo de resultado.

La sobrecarga del método siguiente Emit puede usar el conv.ovf.i2 código de operación:

Se aplica a