Freigeben über


OpCodes.Conv_Ovf_U2 Feld

Definition

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

public: static initonly System::Reflection::Emit::OpCode Conv_Ovf_U2;
public static readonly System.Reflection.Emit.OpCode Conv_Ovf_U2;
 staticval mutable Conv_Ovf_U2 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_Ovf_U2 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
B6 conv.ovf.u2 Konvertieren Sie in eine unsigned int16 (im Stapel als int32), und lösen Sie beim Überlauf eine Ausnahme aus.

Das Übergangsverhalten des Stapels 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.

Der conv.ovf.u2 Opcode konvertiert den value oben auf dem 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.

Bei Konvertierungen von Gleitkommazahlen in ganzzahlige Werte wird die Zahl in Null abgeschnitten. 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 ebenfalls native int).

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

Die folgende Emit Methodenüberladung kann den conv.ovf.u2 Opcode verwenden:

Gilt für: