bnez

RISC-V bnez 伪指令详解

汇编器伪指令

RISC-V bnez 伪指令的 bnez 展开为 BNE rs, x0, offset,表示寄存器不等于零时分支。BNE 使用有符号 B 立即数形成分支目标,条件分支范围为正负 4 KiB。

你写下的是
bnez rs, offset
常见真实展开
bne rs, x0, offset

这条伪指令到底在帮你省什么

bnez 用 bne rs, x0, offset 表示寄存器不等于零时分支。

展开过程怎么理解

步骤 1
RISC-V Assembly Programmer's Manual 将 bnez rs, offset 展开为 bne rs, x0, offset。
步骤 2
BNE 在 rs1 与 rs2 不相等时取分支。

汇编写法与真实指令

该汇编写法对应 RISC-V Assembly Programmer's Manual 的 bnez,即 bne rs, x0, offset;真实语义由 BNE 定义。

官方依据与阅读顺序

本页把伪指令当作汇编器层面的别名或宏来解释:先看它会展开成哪些真实指令,再回到官方 ISA 手册理解真实指令的行为。涉及 ABI、重定位或链接器松弛时,以 psABI 文档为准。

容易混淆 / 常见误区

条件分支的 B 立即数为有符号、以 2 字节为倍数的偏移,范围为正负 4 KiB。

常见问题

bnez 展开为什么?

RISC-V Assembly Programmer's Manual 给出 bnez rs, offset 展开为 bne rs, x0, offset。