Freigeben über


OpCodes.Conv_I1 Feld

Definition

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

public: static initonly System::Reflection::Emit::OpCode Conv_I1;
public static readonly System.Reflection.Emit.OpCode Conv_I1;
 staticval mutable Conv_I1 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_I1 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
67 conv.i1 Konvertieren Sie in int8, pushen Sie int32 auf stapel.

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.

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

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

Die Konvertierung von Gleitkommazahlen in ganzzahlige Werte schneidet die Zahl in Richtung 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) 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 ein int32ist, 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_I1 unter und Conv_Ovf_I1_Un .

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

Gilt für: