Freigeben über


OpCodes.Conv_I2 Feld

Definition

Konvertiert den Wert an oberster Position des Auswertungsstapels in int16 und erweitert ihn dann zu int32 (durch Auffüllen).

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 

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
68 conv.i2 Konvertieren Sie in int16, pushen Sie int32 im Stapel.

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.

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

Der conv.i2 Opcode konvertiert den value oben auf dem Stapel in den im Opcode angegebenen Typ und belässt diesen konvertierten Wert oben im Stapel. Ganzzahlwerte von weniger als 4 Bytes werden erweitert int32 , wenn sie in den Auswertungsstapel geladen werden (es sei denn conv.i , oder conv.u wird verwendet, in diesem Fall ist das Ergebnis ebenfalls native int). Gleitkommawerte werden in den F Typ konvertiert.

Die Konvertierung von Gleitkommazahlen in ganzzahlige Werte schneidet die Zahl in 0 ab. Beim Konvertieren von einer float64 in eine float32kann die Genauigkeit verloren gehen. Wenn value zu groß ist, um in eine float32 (F)zu passen, wird positive Unendlichkeit (wenn value positiv ist) oder negative Unendlichkeit (wenn value negativ) zurückgegeben. Wenn ein Überlauf auftritt, der einen ganzzahligen Typ in einen anderen konvertiert, werden die Bits mit hoher Reihenfolge abgeschnitten. Wenn das Ergebnis kleiner als ist int32, wird der Wert geschildert, um den Slot zu füllen.

Wenn ein Überlauf auftritt, der einen Gleitkommatyp in eine ganze Zahl konvertiert, ist der zurückgegebene Wert nicht angegeben.

Bei Verwendung dieses Felds werden keine Ausnahmen ausgelöst. Entsprechende Anweisungen, die eine Ausnahme auslösen, wenn der Ergebnistyp den Ergebniswert nicht ordnungsgemäß darstellen kann, finden Sie Conv_Ovf_I2 unter und Conv_Ovf_I2_Un .

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

Gilt für: