1. .s文件中的3类符号
1> 伪操作 伪操作不占用代码段的空间,只是告诉编译器对代码如何进行编译。
.**** ---> 都属于伪操作
****:(Label:) ---> 标签等价于函数名
2> 指令 编译器可以将指令编译成一条机器码,在执行时完成一定的功能,
指令的机器码会占用代码段的空间,大小是4字节。
3> 伪指令 伪指令本身不是一条指令,编译器在编译伪指令时,
可以将一条伪指令编译生成多条指令,共同完成一条伪指令的功能。
2. 汇编文件中的注释
单行注释 : @
多行注释 : /**/ .if 0 .endif
注释的使用方式跟编译器有关。
3. start.s文件的解析
.text @ 代码段
.global _start @ 将_start声明为一个全局的
_start: @ 标签,入口函数为_start,跟链接脚本中的入口保持一致
mov r0, #0xFF @ 汇编指令
stop: @ 标签
b stop @ 跳转到stop标签下的第一条指令
@ 等价于while(1);死循环
.end @ 伪操作, 结束
start.s文件中的内容
最新推荐文章于 2024-03-12 11:27:21 发布