(转)GNU风格ARM汇编语法指南(非常详细)4

原文地址:http://zqwt.012.blog.163.com/blog/static/12044684201011148226622/

4、GNU汇编语言定义入口点

汇编程序的缺省入口是_start标号,用户也可以在连接脚本文件中用ENTRY标志指明其它入口点。

例:定义入口点

.section .data
         < initialized data here>
.section .bss
         < uninitialized data here>
.section .text
.globl  _start
_start:
         <instruction code goes here>

5、GNU汇编程序中的宏定义

格式如下:

.macro 宏名 参数名列表   @伪指令.macro定义一个宏

宏体

.endm                    @.endm表示宏结束

 

如果宏使用参数,那么在宏体中使用该参数时添加前缀“”。宏定义时的参数还可以使用默认值。可以使用.exitm伪指令来退出宏。

例:宏定义

.macro SHIFTLEFT a, b
.if  < 0
MOV a, a, ASR #-
.exitm
.endif
MOV a, a, LSL #
.endm