OpCodes.Conv_Ovf_U1_Un Pole
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Převede hodnotu bez znaménka nad zásobníkem vyhodnocení na unsigned int8
a rozšíří ji na int32
hodnotu , která OverflowException vyvolá přetečení.
public: static initonly System::Reflection::Emit::OpCode Conv_Ovf_U1_Un;
public static readonly System.Reflection.Emit.OpCode Conv_Ovf_U1_Un;
staticval mutable Conv_Ovf_U1_Un : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_Ovf_U1_Un As OpCode
Hodnota pole
Poznámky
Následující tabulka uvádí šestnáctkový formát sestavení instrukce a formát sestavení MSIL (Microsoft Intermediate Language) spolu se stručným přehledem referencí:
Formát | Formát sestavení | Description |
---|---|---|
86 | conv.ovf.u1.un | Převede hodnotu bez znaménka na unsigned int8 hodnotu (v zásobníku jako int32 ) a vyvolá výjimku při přetečení. |
Přechodné chování zásobníku v sekvenčním pořadí je:
value
se nasdílí do zásobníku.value
vyskočil ze zásobníku a došlo k pokusu o operaci převodu. Pokud dojde k přetečení, vyvolá se výjimka.Pokud je převod úspěšný, výsledná hodnota se vloží do zásobníku.
Opcode conv.ovf.u1.un
převede value
objekt v horní části zásobníku na typ zadaný v opcode a umístí převedenou hodnotu do horní části zásobníku. Pokud je hodnota příliš velká nebo příliš malá na to, aby byla reprezentována cílovým typem, vyvolá se výjimka.
Převody z čísel s plovoucí desetinou čárkou na celočíselné hodnoty zkracují číslo směrem k nule. Všimněte si, že celočíselné hodnoty menší než 4 bajty jsou při načtení do vyhodnocovacího zásobníku rozšířeny int32
na (pokud se conv.ovf.i
nepoužívají nebo conv.ovf.u
nejsou použity, v takovém případě je výsledek také native int
).
OverflowException vyvolá se, pokud výsledek nemůže být reprezentován v typu výsledku.
Následující Emit přetížení metody může použít conv.ovf.u1.un
opcode: