[活动] 一起围读《RISC-V体系结构编程与实践 》 指令对比看一看

常见泽1   2023-4-24 23:00 楼主

 

指令集学习

 

主要这个是学习了本书第三章的一些心得

 

指令集是处理器体系结构设计的重点部分之一。

RISC-V的每条指令宽度为32位,包括RV32指令集以及RV64指令集。指令格式大概分为6类R I S B U J类型

R:寄存器与寄存器算术指令

I:寄存器与立即数算术指令或加载指令

S:储存指令

B:条件跳转指令

U:长立即数操作指令

J:无条件跳转指令

 

下面我来做一下简单比较与ARM的指令的表格吧

 

 

RISC

ARM

加载

Lb

Lbu

Lh

Lhu

Lw

Lwu

Ld(64位)

lui(64位)

LDRB

LDRBS

LDRH

LDRHSH

LDR

LDM

LDRD(64位)

存储

Sb

Sh

Sw

Sd

STRB

STRH

STR

STRD

移位操作

 

Sll

Slli

Slliw

Sllw

Sra

Srai

Sraiw

Sraw

Srl

Srli

Srliw

srlw

LSL

 

 

 

ASR

 

 

 

ROR

位操作指令

And

Adni

Or

Ori

Xor

Xori

not

AND

 

ORR

 

EOR

 

BIC

ORN

算术指令

Add

Addi

Addw

Addiw

Sub

Subw

(RV64I指令集只提供基础的算术指令,即加法和减法指令)

ADD

 

ADC

 

SUB

SBC

SUBW

RSB

MUL

UDIV

SDIV

比较指令

Slt

Sltu

Slti

sltiu

CMP

 

 

 

CMN

无条件跳转指令

Jal

jalr

B BX

BL BLX

条件跳转

Beq

Bne

Blt

Bltu

Bgt

Bgtu

Bge

Bgeu

 

B<cond><label>

B<cond>.W<label>

 

RISC-V基本指令就这么多了吗?

 

ARM的还有很多没列出来呢,例如位域处理指令、数据转换运算指令、休眠模式相关指令等等。

 

而且RISC-V没有大家最常见到的MOV指令了,后面准备搭载板子测试一下

 

回复评论 (7)

羡慕楼主,能把书读得这么好,我也是第一次见识RISCV-ARM的指令。感谢分享!
点赞  2023-4-25 07:25

RISC-V指令和ARM指令各有不同

其他地方可以不可以这里理解, RISC-V 所支持 CPU 平台软件和开发环境支持有限呢

点赞  2023-4-25 07:31

今天也搞个RISC-V的书看一看    

在爱好的道路上不断前进,在生活的迷雾中播撒光引
点赞  2023-4-25 09:54

羡慕楼主,能把书读得这么好,我也是第一次见识RISCV-ARM的指令。感谢分享!

点赞  2023-4-25 09:59

收集的满全的嘛,要把每个都弄懂挺不容易的

点赞  2023-4-25 21:06
我在活动中,得了一个CH32C307的书,苏州大学的,翻了翻,挺值得学习的。
点赞  2023-4-29 07:21
我这两天学习了Cortex-A7的汇编指令,楼主的学习让我进一步加深学习印象。
点赞  2023-4-30 13:19
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复