FCLASS.S 会设置 NV 吗?
不会。官方 FCLASS 语义说明该指令不设置浮点异常标志。
检查单精度浮点值,把官方 10 类 one-hot 掩码写入整数寄存器 rd。
语法 fclass.s rd, rs1;rd 是整数、rs1 是浮点寄存器;没有舍入操作数。
32 位 OP-FP:funct7=1110000、rs2=00000、funct3=001、opcode=1010011;rs2 是固定选择子,不是第二源操作数。
RV32/RV64 F 2.2;所需扩展与浮点状态须启用。10位 one-hot 掩码,其它位清零;含 sNaN 在内均不设置 fflags,不舍入。
FLEN>32 时源须正确 NaN-boxed,否则按 canonical NaN;rd=x0 丢弃结果且 fflags 不变。动画固定 FLEN=32,文本先量化为 S 源值;量化不是指令舍入。初始 fflags=0 仅为动画假设;指令不清除已有标志。
FCLASS.S 检查 f[rs1] 中的单精度浮点编码,并把 10 位 one-hot 分类掩码写入 x[rd]。位 0..9 依次表示负无穷、负正规、负非正规、负零、正零、正非正规、正正规、正无穷、signaling NaN、quiet NaN;其它 rd 位清零,且不设置浮点异常标志。rd=x0 时丢弃掩码。FLEN>32 时源须正确 NaN-boxed,否则按单精度 canonical NaN 分类为 bit9。
展示 F 扩展单精度 OP-FP 指令的 ISA 可见流程:解析编码字段,读取浮点寄存器,执行 FCLASS 语义并写回 rd。
机器码按 R-type OP-FP 字段切分;单精度浮点 OP-FP 指令使用 opcode 1010011。
FCLASS 写入 10 位 one-hot 分类掩码,除位 0..9 外其它 rd 位清零;分类 NaN 也不设置浮点异常标志。文本 nan/qnan 对应 quiet NaN 的 bit 9,snan 对应 signaling NaN 的 bit 8。 有限十进制教学输入先量化为 S 格式,再按其 S 编码分类。
FCLASS 写入 10 位 one-hot 分类掩码,除位 0..9 外其它 rd 位清零;分类 NaN 也不设置浮点异常标志。文本 nan/qnan 对应 quiet NaN 的 bit 9,snan 对应 signaling NaN 的 bit 8。 有限十进制教学输入先量化为 S 格式,再按其 S 编码分类。
假定 F 与 FS 已启用,固定 FLEN=32、初始 fflags=0。FCLASS.S 不舍入、不改变 fflags;分类掩码写入整数 rd,rd=x0 时丢弃且 x0 保持零。步骤是教学视图。
该动画只展示 RISC-V F 扩展的 ISA 可见 OP-FP 编码、示例数值结果和 fflags 关系;不模拟具体 FPU 流水线、延迟、完整 IEEE 754 边界组合或微架构实现。
FCLASS.S 用一个整数掩码描述浮点值类别,适合在软件中区分零、非正规数、无穷和 NaN。
fclass.s x10, f0 # F enabled; f0=-0.0 -> x10=0x008, fflags unchanged。启用本页扩展与浮点状态并预置注释中的源值;结果按本页分类或舍入规则推导。
fclass.s x10, f0 # F enabled; f0=-0.0 -> x10=0x008, fflags unchanged。启用本页扩展与浮点状态并预置注释中的源值;结果按本页分类或舍入规则推导。
fclass.s x10, f0 # F enabled; f0=-0.0 -> x10=0x008, fflags unchanged。启用本页扩展与浮点状态并预置注释中的源值;结果按本页分类或舍入规则推导。
不会。官方 FCLASS 语义说明该指令不设置浮点异常标志。
不是。结果是 10 位 one-hot 分类掩码,用于表示具体浮点类别。
不是。rd 是整数寄存器,保存分类掩码。