【RISC-V】fclass数值类型对照表

指令:

复制代码
vfclass.v vd, vs2, vm # Vector-vector

解析:

cpp 复制代码
if (vl > vlmax(e32, mf2)) vl = __riscv_vsetvl_e32mf2(vl);
vuint32mf2_t res;
for (size_t i = 0; i < vl; i++) {
  uint32_t t = 0;
  float32_t a = op1[i];
  bool sub = is_subnormal(op1[i]); // false for ±0
  if (a == -∞)     t |= 1<<0; //负无穷 ==   1 == 0x001
  if (a<0 && !sub) t |= 1<<1; //负正规数 ==   2 == 0x002; false for ±0.0
  if (a<0 &&  sub) t |= 1<<2; //负非正规数(指数) ==   4 == 0x004; false for ±0.0
  if (a === -0.0)  t |= 1<<3; //负零 ==   8 == 0x008
  if (a === +0.0)  t |= 1<<4; //正零 ==  16 == 0x010
  if (a>0 &&  sub) t |= 1<<5; //正非正规数 ==  32 == 0x020
  if (a>0 && !sub) t |= 1<<6; //正正规数 ==  64 == 0x040
  if (a == +∞)     t |= 1<<7; //正无穷 == 128 == 0x080
  if (isSNaN(a))   t |= 1<<8; //信号 == 256 == 0x100
  if (isQNaN(a))   t |= 1<<9; //静默 == 512 == 0x200
  res[i] = t;
}
for (size_t i = vl; i < vlmax; i++) res[i] = anything();
return res;

对应表格

代码逻辑判断 (伪代码) 分类名称 对应位 返回值 (十进制) 返回值 (十六进制)
a == -∞ 负无穷 (Negative Infinity) Bit 0 1 0x001
a < 0 && !sub (负数且非非正规数) 负正规数 (Negative Normal) Bit 1 2 0x002
a < 0 && sub (负数且为非正规数) 负非正规数 (Negative Subnormal) Bit 2 4 0x004
a === -0.0 负零 (Negative Zero) Bit 3 8 0x008
a === +0.0 正零 (Positive Zero) Bit 4 16 0x010
a > 0 && sub (正数且为非正规数) 正非正规数 (Positive Subnormal) Bit 5 32 0x020
a > 0 && !sub (正数且非非正规数) 正正规数 (Positive Normal) Bit 6 64 0x040
a == +∞ 正无穷 (Positive Infinity) Bit 7 128 0x080
isSNaN(a) 信号型 NaN (Signaling NaN) Bit 8 256 0x100
isQNaN(a) 静默型 NaN (Quiet NaN) Bit 9 512 0x200

举例:

cpp 复制代码
const float32_t vec1[DATALEN] = { 16.0, 16.50, -16.5000, -16.5001, +0.0, -0.0, -1e-38, 1e-38 };

结果:

cpp 复制代码
res[8] = {64, 64, 2, 2, 16, 8, 4, 32}
相关推荐
hongmai6668881 天前
ESP8684-WROOM-02C:一块被低估的RISC-V Wi-Fi模组
单片机·嵌入式硬件·物联网·5g·智能路由器·risc-v
深圳市爱派派智能科技有限公司3 天前
“进迭时空 RISC-V 集群服务器 CSB1-N10SPK3:10 节点 K3,600 TOPS 绿色算力“
运维·服务器·risc-v·k3·进迭时空·集群服务器
硅农程序猿4 天前
芯片设计中的门级仿真(GLS):从零延迟验证到 SDF 时序反标
嵌入式硬件·硬件架构·risc-v·芯片
圆山猫4 天前
[Virtualization](四):Linux KVM/RISC-V 的 vCPU 运行路径
java·linux·risc-v
圆山猫4 天前
[Virtualization](三):RISC-V H-extension 与 Guest 执行模式
android·java·risc-v
hongmai6668887 天前
ESP32-C5-WROOM-1-N16R8:双频Wi-Fi 6与多协议融合,重新定义物联网连接新标准
笔记·嵌入式硬件·物联网·智能路由器·risc-v
国科安芯7 天前
FreeRTOS RISC-V 浮点上下文切换移植:在 IAR 工程中完整保存 FPU 寄存器
java·开发语言·单片机·嵌入式硬件·算法·系统架构·risc-v
hongmai6668888 天前
乐鑫ESP32-C61-WROOM-1模组:Wi-Fi 6与蓝牙LE双模的RISC-V新选择
单片机·嵌入式硬件·risc-v
驱动探索者10 天前
RISC-V Local Interrupt 深度解析:从 CLINT 到 CLIC,再到 Zephyr 驱动实现
risc-v
weixin_7275356210 天前
计算机组成原理:从晶体管到你面前这块屏幕的史诗之旅
risc-v