OpCodes.Conv_Ovf_U2_Un Pole

Definice

Převede hodnotu bez znaménka nad zásobníkem vyhodnocení na unsigned int16 a rozšíří ji na int32hodnotu , která OverflowException vyvolá přetečení.

public: static initonly System::Reflection::Emit::OpCode Conv_Ovf_U2_Un;
public static readonly System.Reflection.Emit.OpCode Conv_Ovf_U2_Un;
 staticval mutable Conv_Ovf_U2_Un : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_Ovf_U2_Un As OpCode 

Hodnota pole

Poznámky

Následující tabulka uvádí hexadecimální formát sestavení instrukce a formát sestavení MSIL (Microsoft Intermediate Language) spolu se stručným souhrnem referenčních informací:

Formát Formát sestavení Description
87 conv.ovf.u2.un Převede hodnotu bez znaménka na unsigned int16 hodnotu (na 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:

  1. value se nasdílí do zásobníku.

  2. value se zobrazí ze zásobníku a pokusí se o operaci převodu. Pokud dojde k přetečení, vyvolá se výjimka.

  3. Pokud je převod úspěšný, výsledná hodnota se nasdílí do zásobníku.

Opcode conv.ovf.u2.un převede value horní část 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á, 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 zkušebního zásobníku rozšířeny int32 na (pokud se conv.ovf.i nepoužívají nebo conv.ovf.u se nepoužívají, v takovém případě je výsledek také native int).

OverflowException je vyvolán, 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.u2.un opcode:

Platí pro