Freigeben über


OpCodes.Conv_Ovf_I8 Feld

Definition

Konvertiert den Wert mit Vorzeichen an oberster Position des Auswertungsstapels in int64. Bei einem Überlauf wird eine OverflowException ausgelöst.

public: static initonly System::Reflection::Emit::OpCode Conv_Ovf_I8;
public static readonly System.Reflection.Emit.OpCode Conv_Ovf_I8;
 staticval mutable Conv_Ovf_I8 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_Ovf_I8 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
B9 conv.ovf.i8 Konvertieren Sie in ein int64 (im Stapel als int64), und lösen Sie 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.i8 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.i8 opcode verwenden:

Gilt für: