OpCodes.Conv_R_Un 欄位
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將評估堆疊頂端不帶正負號的整數 (Unsigned Integer) 值轉換成 float32
。
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
欄位值
備註
下表列出指令的十六進位和 Microsoft 中繼語言 (MSIL) 元件格式,以及簡短的參考摘要:
格式 | 元件格式 | Description |
---|---|---|
76 | conv.r.un | 將不帶正負號的整數轉換為浮點,並 F 推送堆疊。 |
堆疊轉換行為依循序順序為:
value
會推送至堆疊。value
從堆疊快顯,並嘗試轉換作業。如果轉換成功,產生的值會推送至堆疊。
opcode 會將conv.r.un
value
堆疊頂端的 轉換為 opcode 中指定的類型,並將該轉換的值保留在堆疊頂端。 當小於 4 個字節 int32
的整數值載入評估堆疊 (時,除非 conv.i
使用 或 conv.u
,否則也會 native int
將結果) 。 浮點值會 F
轉換成 類型。
從浮點數轉換成整數值,會將數位截斷為零。 從 float64
float32
轉換成 時,精確度可能會遺失。 如果 value
太大而無法容納 float32 (F)
,則會 value
傳回正無限大) 或負無限大 (如果 value
傳回負) 則為正無限大 (。 如果發生溢位將一個整數類型轉換成另一個整數類型,則會截斷高序位。 如果結果小於 int32
,則值會以符號延伸以填滿位置。
如果發生溢位,將浮點類型轉換為未指定傳回的整數 result
。 作業會將 conv.r.un
整數從堆疊中取出、將它解譯為不帶正負號,並以浮點數取代它來表示整數: float32
如果這夠寬,表示整數而不遺失有效位數,則為 float64
。
使用此欄位時,不會擲回例外狀況。
下列 Emit 方法多載可以使用 conv.r.un
opcode: