OpCodes.Conv_U8 Pole
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Konwertuje wartość na stos oceny na unsigned int64wartość , a następnie rozszerza ją na int64.
public: static initonly System::Reflection::Emit::OpCode Conv_U8;
public static readonly System.Reflection.Emit.OpCode Conv_U8;
staticval mutable Conv_U8 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_U8 As OpCode
Wartość pola
Uwagi
W poniższej tabeli wymieniono format zestawu szesnastkowy i microsoft intermediate language (MSIL) instrukcji wraz z krótkim podsumowaniem referencyjnym:
| Format | Format zestawu | Opis |
|---|---|---|
| 6E | conv.u8 | Konwertuj na int64, wypychając int64 na stos. |
Zachowanie przejściowe stosu w kolejności sekwencyjnej to:
valuejest wypychany do stosu.valuejest zwinięty ze stosu, a operacja konwersji jest podejmowana.Jeśli konwersja zakończy się pomyślnie, wynikowa wartość zostanie wypchnięta do stosu.
Kod conv.u8 opcode konwertuje element value w górnej części stosu na typ określony w kodzie opcode i pozostaw wartość przekonwertowaną w górnej części stosu. Wartości całkowite mniejsze niż 4 bajty są rozszerzane do int32 momentu ich załadowania do stosu ewaluacyjnego (chyba że conv.i jest używany lub conv.u używany, w którym przypadku wynik jest również native intwynikiem ). 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 na float64 wartość można utracić precyzję float32. Jeśli value jest zbyt duży, aby zmieścić się w float32 (F), dodatnia nieskończoność (jeśli value jest dodatnia) lub ujemna nieskończoność (jeśli value jest ujemna) jest zwracana. Jeśli przepełnienie nastąpi przekonwertowanie jednego typu liczby całkowitej na inną, bity o wysokiej kolejności zostaną obcięte. Jeśli wynik jest mniejszy niż wartość int32, wartość jest rozszerzona o znak, aby wypełnić gniazdo.
Jeśli przepełnienie występuje podczas konwertowania typu zmiennoprzecinkowego na liczbę całkowitą, zwracana wartość jest nieokreślona.
W przypadku korzystania z tego pola nie są zgłaszane żadne wyjątki. Zobacz Conv_Ovf_I8 i Conv_Ovf_I8_Un , aby uzyskać równoważne instrukcje, które zgłaszają wyjątek, gdy typ wyniku nie może prawidłowo reprezentować wartości wyniku.
Następujące Emit przeciążenie metody może używać conv.u8 kodu opcode: