2025-11-08 05:27:08
arm处理器里r0寄存器是专门放临时数据的通用寄存器。比如算术运算时存加减数,数据传输时存地址。这个寄存器编号是0,所以叫r0。它在指令里经常被用,像加载数据指令ldr和存储指令str都会优先用r0。
因为arm处理器是精简指令集架构(risc),设计时要让指令尽量短。r0寄存器没有符号位,只能存正数,所以适合存地址或无符号数。比如启动代码里,r0会放返回地址,函数调用时放参数。arm手册明确说r0在lsm指令里只能存地址,不能存数据。比如在cortex-m0内核里,系统初始化后r0默认是0x00000000,这和处理器启动地址相关。可能出现句子合并,比如"r0寄存器在启动时存放返回地址,函数调用时传递参数",但核心信息不变。
本题链接: