首页/指令库/VSBC-VVM
VSBC.VVM

RISC-V VSBC.VVM 指令详解

指令手册R-type

带借位输入的向量整数减法。

指令语法

vsbc.vvm vd, vs2, vs1, v0.t
操作数说明
目标寄存器 rd:存放运算结果的通用寄存器。
源寄存器 rs1:第一个操作数寄存器。
源寄存器 rs2:第二个操作数寄存器。
V向量整数运算进位/借位

指令行为说明

VSBC.VVM 对活动 body 元素计算 vs2 - vs1 - v0.mask[i],结果写入 vd;v0.t 是借位输入,不是普通执行掩码。

快速理解与检索要点

VSBC.VVM 是多字精度减法的数据结果指令,v0.mask[i] 提供借位输入。

带 m 后缀的 v0 是算术借位输入,不是普通执行掩码。
借位输出由 VMSBC 生成,而不是由 VSBC 写入掩码。
结果按 SEW 宽度写入 vd,可与 VMSBC 串接实现多字减法。

常见使用场景

多精度减法

结合 «vsbc.vvm v8, v12, v4, v0.t» 等实际代码理解该场景。

大整数运算

结合 «vsbc.vvm v8, v12, v4, v0.t» 等实际代码理解该场景。

使用前检查清单

语法检查
  • 确认当前指令格式为 R-type。
  • 确认操作数排列顺序与示例一致。
语义检查
  • 确认目标寄存器用途和调用约定兼容。
  • 确认该指令不是伪指令展开后的底层形式。

容易混淆 / 常见误区

vd不能为v0
编码vm=0但操作所有体元素

常见问题

VSBC.VVM 会产生借位输出吗?

不会。VSBC 写减法数据结果;借位输出应使用 VMSBC 指令生成。