1. AREA: AREA 段名 属性,…… AREA用于定义一个代码段、数据段或者特定属性的段。 属性部分表示该代码段/数据段的相关属性,多个属性可以用“,”分隔。 常见属性如下: ?DATA:定义数据段。 ?CODE:定义代码段。 READONLY:表示本段为只读。 READWRITE:表示本段可读写。 一个汇编程序至少应该包含一个段,当程序太长时,也可以将程序分为多个代码段和数据段。 例如: AREA test,CODE,READONLY AREA ||.text||, CODE, READONLY 2.? CODE16、CODE32: CODE16/CODE32 CODE16伪操作指示编译器后面的代码为16位的Thumb指令。CODE32伪操作指示编译器后面的代码为32位的ARM指令。 如果在汇编源代码中同时包含Thumb和ARM指令时,可以用“CODE32”通知编译器其后的指令序列为32位的ARM指令,用“CODE16”伪指令通知编译器其后的指令序列为16位的Thumb指令。 在使用ARM指令和Thumb指令混合编程的代码里,这两条伪指令后面的代码类型是不同的,但它们并不能对处理器进行状态的切换。 例如: CODE32 ; 32位的ARM指令 AREA ||.text||,CODE,READONLY …… LDR R0,=0
原创力文档

文档评论(0)