arm gnu汇编学习笔记,持续更新中
来源:互联网 发布:治隆唐宋 知乎 编辑:程序博客网 时间:2024/06/05 17:58
学一个东西,首先要找到一个靠谱的资料。
gnu汇编的语法是哪里规定的?是gnu assembler规定的!那么靠谱的资料就是gas的手册。
gas是binutils的一部分。实际上gas不是gcc的一部分。但是,编译C语言程序的时候并没有显式使用gas,这是因为gcc内部调用了gas么,这个有待后续研究。
从gnu网站上能够找到一个自由软件的列表:http://directory.fsf.org/wiki/GNU
从这个列表里面能找到binutils的连接:https://www.gnu.org/software/binutils/
从这个binutils主页上能够找到binutils的文档,我找到的是:https://sourceware.org/binutils/docs-2.25/
binutils的文档中包含gas的文档:https://sourceware.org/binutils/docs-2.25/as/index.html
gas手册很长,不能从都到尾学习,我是拿它当工具书的,需要的时候查询一下,觉得有用的就记录一下。
下面列出一些阅读gnu汇编代码的基础知识,有了这些知识就可以开始读gnu汇编代码了。
1. @后面的内容为注释。
2. 任何以冒号结尾的标识符都认为是一个标签,而不一定要在行首。
3. ascii "<string>" 在汇编中定义字符串并为之分配存储空间。
4. asciz 与ascii类似,但不分配存储空间。
5. .byte <byte1> {,<byte2>} ... 定义一个或多个字节并分配存储空间。
6. .code <number of bits> 设定指令宽度。
7.
.if
.else
.enif
8. .end 汇编文件结束标识,常省略不用。
9. .endm宏结束标识。
10. .exitm跳出宏。
11. .macro <name> {<arg1>} {,<arg2>, ... , <argn>} 定义一段名为name的宏,必须有endm结尾。可以使用.exitm从中间跳出。在使用宏的参数时必须要这样使用\<arg>,家反斜杠。
12. 待续。。。
- arm gnu汇编学习笔记,持续更新中
- GNU ARM 汇编学习笔记
- ARM汇编学习拾贝 (持续更新)
- 学习笔记,持续更新中
- ARM汇编学习笔记
- ARM汇编学习笔记
- ARM汇编学习笔记
- GNU GAS (GNU ARM汇编)
- ACE学习笔记--持续更新中
- lua学习笔记(持续更新中)
- ACE学习笔记--持续更新中
- Sybase数据库学习笔记【持续更新中】
- python 学习笔记 持续更新中
- MongoDB学习笔记[持续更新中...]
- EnCache 学习笔记(持续更新中)
- PRML学习笔记持续更新中~
- 天涯学习笔记(持续更新中。。。。)
- Hadoop学习笔记---持续更新中。。。
- OpenCV + Python 人脸检测
- Java Web项目中出现的中文乱码问题
- 中心极限定理的证明
- mysql error
- 【JavaScript】DOM基础总结
- arm gnu汇编学习笔记,持续更新中
- Python语言相关术语汇总
- bmfont使用心得
- HDOJ 4126 Bazinga (字符串预处理)
- PHP中MySQL相关函数
- 远程桌面连接教程(微软自带)
- 关于OC中NSString类型的 retainCount为-1的情况
- UINavigationItem UINavigationBar分析
- Unsupported major.minor version xx.0错误原因