Partager via


OpCodes.Conv_I2 Champ

Définition

Convertit la valeur située en haut de la pile d'évaluation en int16 et l'étend (remplit) à int32.

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

Valeur de champ

Remarques

Le tableau suivant répertorie le format d’assembly MSIL et hexadécimal de l’instruction, ainsi qu’un bref résumé des références :

Format Format d’assembly Description
68 conv.i2 Convertissez en int16, en push sur int32 la pile.

Le comportement transitionnel de la pile, dans l’ordre séquentiel, est le suivant :

  1. value est poussé vers la pile.

  2. value est extrait de la pile et l’opération de conversion est tentée.

  3. Si la conversion réussit, la valeur résultante est envoyée dans la pile.

L’opcode conv.i2 convertit le value en haut de la pile en type spécifié dans l’opcode, et laisse cette valeur convertie en haut de la pile. Les valeurs entières inférieures à 4 octets sont étendues à int32 lorsqu’elles sont chargées sur la pile d’évaluation (sauf si conv.i ou conv.u est utilisé, auquel cas le résultat est également native int). Les valeurs à virgule flottante sont converties en F type .

La conversion de nombres à virgule flottante en valeurs entières tronque le nombre vers zéro. Lors de la conversion d’un float64 en , float32la précision peut être perdue. Si value est trop grand pour tenir dans un float32 (F), l’infini positif (si value est positif) ou l’infini négatif (si value est négatif) est retourné. Si un dépassement de capacité se produit lors de la conversion d’un type entier en un autre, les bits d’ordre élevé sont tronqués. Si le résultat est inférieur à un int32, la valeur est étendue par signe pour remplir l’emplacement.

Si un dépassement de capacité se produit lors de la conversion d’un type à virgule flottante en entier, la valeur retournée n’est pas spécifiée.

Aucune exception n’est jamais levée lors de l’utilisation de ce champ. Consultez Conv_Ovf_I2 et Conv_Ovf_I2_Un pour obtenir des instructions équivalentes qui lèveront une exception lorsque le type de résultat ne peut pas représenter correctement la valeur du résultat.

La surcharge de méthode suivante Emit peut utiliser l’opcode conv.i2 :

S’applique à