RISC-V汇编基础的三大块知识
时间:2023-06-17 10:22:31来源:架构师李肯

1 前言


【资料图】

玩嵌入式的,或多或少都接触ARM。

但是近些年随着科技的发展,CPU的架构家族中,新增了一个叫RISC-V的家伙。

RISC-V(读作“RISC-FIVE”)是基于精简指令集计算(RISC)原理建立的开放指令集架构[1](ISA),V表示为第五代RISC(精简指令集计算机[2]),表示此前已经四代RISC处理器原型芯片。每一代RISC处理器都是在同一人带领下完成,那就是加州大学伯克利分校的David A. Patterson教授。与大多数ISA相反,「RISC-V ISA可以免费地用于所有希望的设备中,允许任何人设计、制造和销售RISC-V芯片和软件」。它虽然**不是第一个开源的的指令集(ISA)**,但它很重要,因为它第一个被设计成可以根据具体场景可以选择适合的指令集的指令集架构。基于RISC-V指令集架构可以设计服务器CPU[3],家用电器cpu,工控cpu和用在比指头小的传感器中的cpu。

更多详细介绍,请参考百度百科[4],RISC-V简介[5].

2 RISC-V知识图谱

本文先列个大纲,后续有时间再补充。

3 RISC-V汇编基础三大块

这里整理了RISC-V汇编中非常基础的三大块知识,了解了这三大块内容基本可以看懂甚至编译一些简单的汇编程序。

3.1 寻址方式

RISC-V分支指令寻址,在之前的B类型指令就是其中之一。这种格式可以表示从-4096到4094的分支地址,以2的倍数表示。B型格式包括一个7位操作码、一个3位功能码、两个5位的寄存器操作数( rs1和 rs2)和一个12位地址立即数。该地址使用特殊的编码方式,简化了数据通路设计,但使组装变得复杂。下面这条指令

其中条件分支的操作码是11001112,而bne 的funct3码是0012 RISC-V的无条件跳转–链接指令(jal),是分支寻址的另一种方法,也是唯一使用J型格式的指令。该指令由一个7位操作码、一个5位目标寄存器操作数(rd)和一个20位地址立即数组成。链接地址,即jal之后的指令的地址,被写入rd 中。

如果程序的地址必须适合这个20位字段,则意味着没有程序可能大于220,所以另一种方法是指定一个与分支地址偏移量相加的寄存器,这样就允许程序大到264,并且仍然能够使用条件分支指令,以便分支指令可以按如下来计算:

程序计数器=寄存器内容+分支地址偏移量 这样就允许程序大到2^64,并且仍然能够使用条件分支指令

立即数寻址,操作数是指令本身的常量。寄存器寻址,操作数在寄存器中。基址或偏移寻址,操作数于内存中,其地址是寄存器和指令中的常量之和。PC相对寻址,分支地址是PC和指令中常量之和。注: 「加载和存储对字节、半字、字或双字的访问有不同的版本」。

3.2 寄存器的用途

3.2.1 RISC-V的寄存器列表

3.2.2 RISC-V寄存器在汇编代码中使用

3.3 汇编指令

RISC-V有六种基本指令格式:

R 类型指令,用于寄存器-寄存器操作I 型指令,用于短立即数和访存 load 操作S 型指令,用于访存 store 操作B 类型指令,用于条件跳转操作U 型指令,用于长立即数J 型指令,用于无条件跳转

3.3.1 其他

本人有RISC-V相关的学习资料若干份,这些都是非常经典使用的学习材料,感兴趣的可以扫码VX联系我。

4 更多分享

欢迎关注我的github仓库01workstation[6],日常分享一些开发笔记和项目实战,欢迎指正问题。

同时也非常欢迎关注我的CSDN主页和专栏:

【CSDN主页:架构师李肯】[7]

【RT-Thread主页:架构师李肯】[8]

【C/C++语言编程专栏】[9]

【GCC专栏】[10]

【信息安全专栏】[11]

【RT-Thread开发笔记】[12]

【freeRTOS开发笔记】[13]

【BLE蓝牙开发笔记】[14]

【ARM开发笔记】[15]

【RISC-V开发笔记】[16]

有问题的话,可以跟我讨论,知无不答,谢谢大家。

5 参考链接

RISC-V 生态架构浅析[17]

RISC-V寄存器[18]

RISC-V指令[19]

以上参考资料,由本人整理,但来源于网络,侵删!

标签:

生活指南
  • 夏秋季为感染高峰期,儿童感染占比较高 不可忽视的沙门氏菌 环球快播报

    本报记者王美华图为5月30日,在江苏省海安市滨海新区的天成现代农业科

  • 【绿色云南好“丰”景】洱源县因地制宜发展特色农业——海菜花开幸福长_世界新资讯

    青山环绕,田园似锦,连片的水田上,一朵朵海菜花悄然绽放,菜农们正忙

  • 【在希望的田野上】小麦主产区多措并举稳产保丰 世界观热点

    农业农村部小麦机收调度显示,目前全国麦收进度已过九成。今年麦收期间

  • 2023陕西汉中市宁强县县及县以下医疗机构定向招聘医学类本科毕业生考试总成绩及体检复审考察有关事项公告_天天观察

    根据《2023年宁强县县及县以下医疗机构定向招聘医学类本科毕业生公告》

  • 前沿热点:北海市银海区第一小学:打造优质课后服务助推“双减”落地见成效

    为了贯彻落实“双减”政策,北海市银海区第一小学将课后服务作为“双减

  • 618该选谁?一加Ace 2和荣耀80 GT全方位对比,一文全面了解

    骁龙8+手机确实值得入手,但配置方面有所区别,体验上也不一样,一加Ac

  • 世界热消息:自驾独库公路要办边防证吗

    不用边防证!因为独库公路不在边境地区。独(山子)库(车)公路,即217国道

  • 中国经济发展态势将持续向好(锐财经) 快播

    中国经济发展态势将持续向好(锐财经),大力,锐财经,实体经济,民营经济

  • 队报:纳格尔斯曼不会执教巴黎,双方谈判数周后决定不合作❌

    队报:纳格尔斯曼不会执教巴黎,双方谈判数周后决定不合作❌,队报,巴黎

  • 全球热讯:“这麦子地毯,比什么装修都好看!”

    “这麦子地毯,比什么装修都好看!”

  • 环球焦点!薇娅被罚13.41亿元后最终退场,电商公司申请拟注销

    6月12日消息,2021年12月的薇娅一案相信小伙伴们还有一定印象,其因逃

  • 国宝人寿原董事长易军因受贿罪被判刑十年 公司董事长五年三换、仍处亏损周期|天天时快讯

    蓝鲸保险关注到,近日,国宝人寿保险股份有限公司(下称“国宝人寿”)

  • 广西最奇特婚恋习俗,年轻人靠“爬楼”娶老婆,瑶族姑娘比仙女美

    广西最奇特婚恋习俗,年轻人靠“爬楼”娶老婆,瑶族姑娘比仙女美,沿着

  • 刺客信条4攻略(刺客信条4攻略私掠任务) 天天看点

    1、开始做刺客信条4任务时,请不要那么着急玩支线,把主线任务通到拿索

  • 美三大股指全线收涨,中概股普遍上涨|环球报资讯

    趣店涨9 04%

  • 资金诈骗罪能判多久?|世界今热点

    资金诈骗判多久要根据诈骗的金额和具体情节而定。根据《刑法》第二百六

  • 民生
    • 【三大专项行动】南昌东湖大院派出所:打好“三张牌”,全力护航经济发展

    • 装傻!泰国帕公主昏迷不醒,18岁提帮功去医院,眼神犀利不再蠢笨

    • nba中国赛门票多少钱 nba中国赛门票-焦点热议

    • 每日看点!真心难扑灭!国产电动车岚图追光起火:从白天烧到黑夜