Sdílet prostřednictvím


OpCodes.Conv_Ovf_U2 Pole

Definice

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

public: static initonly System::Reflection::Emit::OpCode Conv_Ovf_U2;
public static readonly System.Reflection.Emit.OpCode Conv_Ovf_U2;
 staticval mutable Conv_Ovf_U2 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_Ovf_U2 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
B6 conv.ovf.u2 Převeďte na objekt unsigned int16 (v zásobníku jako int32) a při přetečení vyvoláte výjimku.

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 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 opcode:

Platí pro