Udostępnij za pośrednictwem


OpCodes.Conv_Ovf_I2 Pole

Definicja

Konwertuje podpisaną wartość na stos oceny na podpisany int16 i rozszerza ją na int32, zgłaszając przepełnienie OverflowException .

public: static initonly System::Reflection::Emit::OpCode Conv_Ovf_I2;
public static readonly System.Reflection.Emit.OpCode Conv_Ovf_I2;
 staticval mutable Conv_Ovf_I2 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_Ovf_I2 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
B5 conv.ovf.i2 Przekonwertuj na element int16 (na stosie jako int32) i wyrzuć wyjątek podczas przepełnienia.

Zachowanie przejściowe stosu w kolejności sekwencyjnej to:

  1. value jest wypychany do stosu.

  2. value jest zwinięty ze stosu, a operacja konwersji jest podejmowana. Jeśli wystąpi przepełnienie, zgłaszany jest wyjątek.

  3. Jeśli konwersja zakończy się pomyślnie, wynikowa wartość zostanie wypchnięta do stosu.

Kod conv.ovf.i2 opcode konwertuje element value na stos na typ określony w kodzie opcode i umieszcza wartość przekonwertowaną w górnej części stosu. Jeśli wartość jest zbyt duża lub zbyt mała, aby być reprezentowana przez typ docelowy, zgłaszany jest wyjątek.

Konwersje z liczb zmiennoprzecinkowych na wartości całkowite obcinają liczbę w kierunku zera. Należy pamiętać, że wartości całkowite mniejsze niż 4 bajty są rozszerzone do int32 momentu ich załadowania do stosu ewaluacyjnego (chyba że conv.ovf.i są używane lub conv.ovf.u używane, w takim przypadku wynik jest również native intwynikiem ).

OverflowException jest zgłaszany, jeśli wynik nie może być reprezentowany w typie wyniku.

Następujące Emit przeciążenie metody może używać conv.ovf.i2 kodu opcode:

Dotyczy