OpCodes.Conv_U1 Champ
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Convertit la valeur située en haut de la pile d'évaluation en unsigned int8
et l'étend à int32
.
public: static initonly System::Reflection::Emit::OpCode Conv_U1;
public static readonly System.Reflection.Emit.OpCode Conv_U1;
staticval mutable Conv_U1 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_U1 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 |
---|---|---|
D2 | conv.u1 | Convertissez en int8 , en push sur int32 la pile. |
Le comportement transitionnel de la pile, dans l’ordre séquentiel, est le suivant :
value
est poussé vers la pile.value
est extrait de la pile et l’opération de conversion est tentée.Si la conversion réussit, la valeur résultante est envoyée dans la pile.
L’opcode conv.u1
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
float32
en , la 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_I1 et Conv_Ovf_I1_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.u1
: