Freigeben über


OpCodes.Conv_Ovf_I1_Un Feld

Definition

Konvertiert den Wert ohne Vorzeichen an oberster Position des Auswertungsstapels in int8 mit Vorzeichen und erweitert ihn auf int32. Bei einem Überlauf wird eine OverflowException ausgelöst.

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

Feldwert

Hinweise

In der folgenden Tabelle sind das Hexadezimal- und MSIL-Assemblyformat (Microsoft Intermediate Language) der Anweisung sowie eine kurze Referenzzusammenfassung aufgeführt:

Format Assemblyformat BESCHREIBUNG
82 conv.ovf.i1.un Konvertiert einen Wert ohne Vorzeichen in einen int8 (im Stapel als int32) und löst eine Ausnahme beim Überlauf aus.

Das Stapelübergangsverhalten in sequenzieller Reihenfolge lautet:

  1. value wird auf den Stapel geschoben.

  2. value wird aus dem Stapel geknallt, und der Konvertierungsvorgang wird versucht. Wenn ein Überlauf auftritt, wird eine Ausnahme ausgelöst.

  3. Wenn die Konvertierung erfolgreich ist, wird der resultierende Wert auf den Stapel gepusht.

Opcode conv.ovf.i1.un konvertiert den oben auf dem value Stapel in den im Opcode angegebenen Typ und platziert diesen konvertierten Wert am anfang des Stapels. Wenn der Wert zu groß oder zu klein ist, um durch den Zieltyp dargestellt zu werden, wird eine Ausnahme ausgelöst.

Konvertierungen von Gleitkommazahlen in ganzzahlige Werte kürzen die Zahl in Richtung 0 ab. Beachten Sie, dass ganzzahlige Werte von weniger als 4 Bytes auf int32 erweitert werden, wenn sie in den Auswertungsstapel geladen werden (es sei denn conv.ovf.i , oder conv.ovf.u werden verwendet, in diesem Fall ist das Ergebnis auch native int).

OverflowException wird ausgelöst, wenn das Ergebnis nicht im Ergebnistyp dargestellt werden kann.

Die folgende Emit Methodenüberladung kann den conv.ovf.i1.un opcode verwenden:

Gilt für: