RISC-V常用汇编指令

RISC-V寄存器表:

RISC-V和常用的x86汇编语言存在许多的不同之处,下面将列出其中部分指令作用:

指令 语法 描述
addi addi rd,rs1,imm 将寄存器rs1的值与立即数imm相加并存入寄存器rd
ld ld t0, 0(t1) 将t1的值加上0,将这个值作为地址,取出这个地址所对应的内存中的值,将这个值赋值给t0
sd sd t0, 0(t1) 将t1的值加上0,将这个值作为地址,将t0的值存储到上述地址所对应的内存中去
li li rd, imm rd = imm(32bit)直接加载32位立即数
auipc auipc rd, imm rd = (imm << 12) + pc(相对pc的偏移量)
jalr jalr rd,offset(rs) 可用于函数返回,把下一条指令的地址存到rd中,然后跳转到rs+offset地址处的指令继续执行。若rd=x0就是单纯的跳转(x0不能被修改)
la la rd,symbol(non-PIC) 伪指令,等价于auipc rd, delta[31:12] + delta[11] 和 addi rd,rd,delta[11:0],其中delta=symbol-pc
csrr a0, base csrr a0, base 将base的值读到a0中
相关推荐
请输入蚊子7 小时前
«操作系统真像还原» 第二章 编写MBR主引导记录
linux·汇编·操作系统·bochs·操作系统真像还原
188号安全攻城狮8 小时前
【PWN】HappyNewYearCTF_8_ret2csu
linux·汇编·安全·网络安全·系统安全
思尔芯S2C2 天前
FPGA原型验证实战:如何应对外设连接问题
fpga开发·risc-v·soc设计·prototyping·原型验证
加强洁西卡2 天前
【RISC-V】从C到可执行文件分析链接重定位的过程
c语言·开发语言·risc-v
硬汉嵌入式2 天前
基于Rust构建的单片机Ariel RTOS,支持Cortex-M、RISC-V 和 Xtensa
单片机·rust·risc-v
MounRiver_Studio2 天前
RISC-V IDE MRS2进阶分享(三):MRS语言服务器
ide·mcu·risc-v·嵌入式开发
加强洁西卡2 天前
【RISC-V】解决链接器加入全局变量优化后操作系统无法启动的问题
risc-v
MounRiver_Studio2 天前
RISC-V IDE MRS2进阶分享(四):CH32H417双核芯片项目开发
ide·mcu·risc-v·嵌入式开发
加强洁西卡2 天前
【RISC-V】区分加载地址、链接地址、运行地址
risc-v
飞凌嵌入式3 天前
1块集成了4核Cortex-A7高性能CPU、1颗RISC-V MCU、多种高速总线、还兼容树莓派的T153低成本开发板
linux·arm开发·嵌入式硬件·risc-v