fcvt.s.wu 的 rm 什么时候重要?
当整数值不能被目标浮点格式精确表示时,rm 或动态 frm 决定舍入方向。
将无符号32位整数转为单精度:f[rd] = (float)(uint32_t)rs1。
fcvt.s.wu 将无符号 32 位整数源整数转换为单精度浮点浮点结果。不能精确表示时,结果按 rm 舍入并写入 f[rd]。
fcvt.s.wu 将无符号 32 位整数源整数转换为单精度浮点浮点结果。不能精确表示时,结果按 rm 舍入并写入 f[rd]。
结合 «fcvt.s.wu f0, x10, rne # f0 = (float)(unsigned)x10» 等实际代码理解该场景。
当整数值不能被目标浮点格式精确表示时,rm 或动态 frm 决定舍入方向。
区别在源/目标格式、整数有符号性、RV64 限制以及是否可能舍入或触发无效转换。