OpCodes.Conv_I 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 nad zásobníkem vyhodnocení na native int
.
public: static initonly System::Reflection::Emit::OpCode Conv_I;
public static readonly System.Reflection.Emit.OpCode Conv_I;
staticval mutable Conv_I : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_I 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 |
---|---|---|
D3 | conv.i | Převeďte na native int , nasdílením native int zásobníku. |
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 je převod úspěšný, výsledná hodnota se vloží do zásobníku.
Opcode conv.i
převede value
objekt v horní části zásobníku na typ zadaný v opcode a tuto převedenou hodnotu ponechá v horní části zásobníku. Celočíselné hodnoty menší než 4 bajty se rozšíří na int32
při jejich načtení do vyhodnocovacího zásobníku (pokud conv.i
se nepoužívá nebo conv.u
se nepoužívá, v takovém případě je výsledek také native int
). Hodnoty s plovoucí desetinou čárkou se převedou na F
typ .
Převod z čísel s plovoucí desetinou čárkou na celočíselné hodnoty zkrátí číslo směrem k nule. Při převodu z na float64
může dojít ke float32
ztrátě přesnosti. Pokud value
je příliš velká, aby se vešla do float32 (F)
, vrátí se kladné nekonečno (pokud value
je kladné) nebo záporné nekonečno (pokud value
je záporné). Pokud dojde k přetečení při převodu jednoho celočíselného typu na jiný, bity s vysokým pořadím jsou zkráceny. Pokud je výsledek menší než int32
hodnota , hodnota se znaménkem rozšíří o vyplnění slotu.
Pokud dojde k přetečení při převodu typu s plovoucí desetinou čárkou na celé číslo, vrácená hodnota není neurčitá.
Při použití tohoto pole se nikdy nevyvolají žádné výjimky. Projděte si Conv_Ovf_I a Conv_Ovf_I_Un ekvivalentní pokyny, které vyvolají výjimku, když typ výsledku nemůže správně vyjádřit výslednou hodnotu.
Následující Emit přetížení metody může použít conv.i
opcode: