C.ADD

RISC-V C.ADD 指令详解

指令手册C-type

rd与rs2相加,结果写回rd。CR格式。rs2!=x0。

指令语法

c.add rd, rs2
操作数说明
压缩指令仅 16 位,寄存器选择通常限制在 x8–x15。
立即数字段较窄,查看特定压缩指令的完整编码。
C压缩指令

指令行为说明

C.ADD (CR格式,可访问全部32个寄存器)将rd与rs2相加并写回rd。扩展为add rd,rd,rs2。rs2≠x0;rs2=x0对应C.JALR/C.EBREAK编码。rd=x0且rs2≠x0时为HINT。

常见使用场景

寄存器操作

结合 «c.add x10, x11 # x10 += x11» 等实际代码理解该场景。

使用前检查清单

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

容易混淆 / 常见误区

rs2不能为x0(否则为C.JALR或C.EBREAK编码)
CR格式可访问全部32个寄存器(不同于C.AND等CA格式指令仅限x8-x15)