C.ADD
RISC-V C.ADD 指令详解
指令手册C-typerd与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)