基本指令格式

用于寄存器-寄存器操作的 R 类型指令

用于短立即数和访存 load 操作的 I 型指令

用于访存 store 操作的 S 型指令

用于条件跳转操作的 B 类型指令

用于长立即数的 U 型指令

用于无条件跳转的 J 型指令

指令格式如下:

Untitled

寄存器们

Untitled

其中x0寄存器始终为零寄存器,x1寄存器始终为返回地址寄存器(ra),x2寄存器始终为栈指针(sp),x3寄存器始终为全局指针(gp),x4寄存器始终为线程指针(tp),而其他通用寄存器则可以用于任何目的

PC寄存器是一个32位的地址寄存器,用于存放将要执行的下个地址中的指令码。它有自动加1的功能,但不属于特殊功能寄存器,没有地址,不可访问

指令集

20137 0000‘0000’0000‘0010’0000‘0001’0011‘0111

func7 011‘0111

rd 0001’0