OpCodes.Conv_R_Un 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 celočíselnou hodnotu bez znaménka nad zkušební zásobník na float32hodnotu .
public: static initonly System::Reflection::Emit::OpCode Conv_R_Un;
public static readonly System.Reflection.Emit.OpCode Conv_R_Un;
staticval mutable Conv_R_Un : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_R_Un As OpCode
Hodnota pole
Poznámky
Následující tabulka uvádí šestnáctkový formát sestavení jazyka MSIL (Intermediate Language) a Microsoft s stručným přehledem referenčních informací:
| Formát | Formát sestavení | Description |
|---|---|---|
| 76 | conv.r.un | Převeďte celé číslo bez znaménka na číslo s plovoucí desetinou čárkou a nasdílení F zásobníku. |
Přechodné chování zásobníku v sekvenčním pořadí je:
valueje nasdílený do zásobníku.valuese zobrazí ze zásobníku a provede se pokus o operaci převodu.Pokud je převod úspěšný, výsledná hodnota se nasdílí do zásobníku.
Opcode conv.r.un převede value horní část zásobníku na typ zadaný v opcode a ponechá převedenou hodnotu v horní části zásobníku. Celočíselné hodnoty menší než 4 bajty jsou rozšířeny na dobu, kdy int32 jsou načteny do zkušebního zásobníku (pokud conv.i nebo conv.u se nepoužívá, v takovém případě je výsledek také native int). Hodnoty s plovoucí desetinou čárkou F se převedou na 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 objektu float64 na přesnost může dojít ke ztrátě float32přesnosti. Pokud value je příliš velký, aby se vešl do float32 (F), kladné nekonečno (pokud value je kladné) nebo záporné nekonečno (pokud value je záporné) je vráceno. Pokud dojde k přetečení převod jednoho celočíselného typu na jiný, jsou bity s vysokým pořadím zkráceny. Pokud je výsledek menší než hodnota int32, hodnota se rozšíří o vyplnění slotu.
Pokud dojde k přetečení převodu typu s plovoucí deseti desetinou čárkou na celé číslo result , vrácené je nezadané. Operace conv.r.un vezme celé číslo ze zásobníku, interpretuje ho jako nepodepsané a nahradí ho číslem s plovoucí desetinnou čárkou, které představuje celé číslo: buď float32, je-li to dostatečně široké, aby představovalo celé číslo bez ztráty přesnosti, nebo jinak float64.
Při použití tohoto pole se nikdy nevyvolají žádné výjimky.
Emit Následující přetížení metody může použít conv.r.un opcode: