C.J

RISC-V C.J 指令详解

指令手册C-type

无条件跳转(±2KiB)。CJ格式。

指令语法

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

指令行为说明

C.J (CJ格式)执行无条件跳转,偏移量符号扩展后加到pc,范围±2KiB。展开为jal x0,offset。

常见使用场景

分支与跳转

结合 «c.j 128 # jump to pc+128» 等实际代码理解该场景。

循环与迭代

结合 «c.j 128 # jump to pc+128» 等实际代码理解该场景。

使用前检查清单

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

容易混淆 / 常见误区

跳转范围仅±2KiB(32位JAL为±1MiB)
不保存返回地址
imm=0 编码保留(非合法指令)