Udostępnij za pośrednictwem


OpCodes.Conv_I1 Pole

Definicja

Konwertuje wartość na stos oceny na int8, a następnie rozszerza ją (pady) na int32.

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 

Wartość pola

Uwagi

W poniższej tabeli wymieniono format zestawu szesnastkowy instrukcji i microsoft intermediate language (MSIL) wraz z krótkim podsumowaniem referencyjnym:

Format Format zestawu Opis
67 conv.i1 Przekonwertuj wartość na int8, wypychając int32 na stos.

Zachowanie przejściowe stosu w kolejności sekwencyjnej jest następujące:

  1. value jest wypychany do stosu.

  2. value jest zwinięty ze stosu, a operacja konwersji jest podejmowana.

  3. Jeśli konwersja zakończy się pomyślnie, wynikowa wartość zostanie wypchnięta do stosu.

Kod conv.i1 opcode konwertuje value element w górnej części stosu na typ określony w kodzie opcode i pozostawia przekonwertowaną wartość na górze stosu. Wartości całkowite mniejsze niż 4 bajty są rozszerzane do int32 momentu ich załadowania do stosu oceny (chyba że conv.i jest używany lub conv.u używany, w tym przypadku wynik jest również native int). Wartości zmiennoprzecinkowe są konwertowane na F typ.

Konwersja z liczb zmiennoprzecinkowych na wartości całkowite obcina liczbę w kierunku zera. Podczas konwertowania z elementu float64 na wartość można utracić precyzję float32. Jeśli value jest zbyt duża, aby zmieścić się w float32 (F), nieskończoność dodatnia (jeśli value jest dodatnia) lub nieskończoność ujemna (jeśli value jest ujemna) jest zwracana. Jeśli przepełnienie następuje przekonwertowanie jednego typu liczby całkowitej na inną, bity o dużej kolejności zostaną obcięte. Jeśli wynik jest mniejszy niż int32wartość , wartość jest rozszerzona o znak, aby wypełnić miejsce.

Jeśli przepełnienie następuje przekonwertowanie typu zmiennoprzecinkowego na liczbę całkowitą, zwracana wartość jest nieokreślona.

Podczas korzystania z tego pola nigdy nie są zgłaszane żadne wyjątki. Zobacz Conv_Ovf_I1 instrukcje Conv_Ovf_I1_Un równoważne, które zgłaszają wyjątek, gdy typ wyniku nie może prawidłowo reprezentować wartości wyniku.

Emit Następujące przeciążenie metody może używać conv.i1 kodu opcode:

Dotyczy