Sdílet prostřednictvím


OpCodes.Conv_Ovf_I1 Pole

Definice

Převede podepsanou hodnotu nad zkušební zásobník na podepsanou int8 a rozšíří ji na int32hodnotu , která OverflowException vyvolá přetečení.

public: static initonly System::Reflection::Emit::OpCode Conv_Ovf_I1;
public static readonly System.Reflection.Emit.OpCode Conv_Ovf_I1;
 staticval mutable Conv_Ovf_I1 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_Ovf_I1 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
B3 conv.ovf.i1 Převeďte na objekt int8 (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.i1 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.i1 opcode:

Platí pro