制作一个RISC-V的操作系统五-RISC-V汇编语言编程一

本文介绍了RISC-V汇编语言的基础概念,包括其高级与低级特性、移植性以及与高级语言的区别。重点讲解了GNU版本的汇编语法,涉及预处理语句、汇编指令与伪指令的区别。
摘要由CSDN通过智能技术生成

RISC-V汇编语言入门

汇编语言概念简介

高级:可以理解就是更贴近人的理解
低级:可以理解就是更贴近机器的

难移植:汇编指令基本上和机器指令一一对应的,不同的指令集架构的机器语言不同。所以一个机器上的汇编可能不能运行到另一个机构不同的机器上。

灵活:高级语言与底层的交互是编译器生成了机器指令再交互的,如果想对生成的机器指令进行优化,此时高级语言不能直接做到,所以不够灵活。反之汇编更底层,更能直接控制对应机器指令的生成,所以优化更方便。
在这里插入图片描述

在这里插入图片描述

汇编语言语法介绍(GNU版本)

不同汇编器支持汇编语法不一样
大写S 保护预处理语句
小写s 纯粹汇编语句
[ ]方括号表示该内容为可选项 ,可以有,也可以没有,如果都没有就是空行
在这里插入图片描述
label: 内容
label:
内容
labei和内容可以一行也可以两行
label可以理解为一个地址
伪指令:包含多条基本指令的指令
汇编指令会把伪指令分解为多条指令,再转换为机器指令执行
指示/伪操作:不是告诉汇编器 做什么 , 而是告诉汇编器 如何做 。就比如说, movq $0, %rax 会被汇编器直接翻译为机器码,最终会由CPU直接执行,而 .section __TEXT,__text , 则不会被翻译成机器码,在最终的可执行文件中也不会找到这句话的踪影。它的作用是告诉汇编器如何汇编。是属于汇编器自己定义的语法,给汇编器看的。在汇编器的手册有它的定义
在这里插入图片描述

  • 10
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

看星猩的柴狗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值