下表列出了ARM汇编器定义的内置变量。(引自Assembler Guide第三章 汇编参考)
变量名称 |
含义 |
{PC} or . |
当前指令的地址 |
{VAR} or @ |
存储区位置计数器当前值 |
{TRUE} |
逻辑常量“真” |
{FALSE} |
逻辑常量“假” |
{OPT} |
当前设置的列表选项值。OPT指令可用于保存当前选项列表,强制改变或者恢复初始值。 ( Value of the currently-set listing option. The OPT directive can be used to save the current listing option, force a change in it, or restore its original value.) |
{CONFIG} |
如果要汇编成ARM指令则值为32,如果要汇编成THUMB指令则值为16。 |
{ENDIAN} |
如果汇编器是大端模式则值为大,如果是小端模式则值为小。 |
{CODESIZE} |
{CONFIG}的同义词 |
{CPU} |
保存选择的CPU名称。默认是ARM7TDMI。如果在命令行 –cpu option指定一个(CPU)架构 ,则{CPU}保存 "Generic ARM".。 |
{FPU} |
保存选择的fpu名称。默认是SoftVFP. |
{ARCHITECTURE} |
保存选择的ARM架构。 |
{PCSTOREOFFSET} |
Is the offset between the address of the STR爌c,[...] or STM燫b,{...,爌c} instruction and the value of pc stored out. This varies depending on the CPU or architecture specified. |
{ARMASM_VERSION} |
Holds an integer that increases with each version. See also Determining the armasm version at assembly time |
|ads$version| |
与{ARMASM_VERSION}值相同 |
{INTER} |
Has the value True if /inter is set. The default is False. |
{ROPI} |
Has the value True if /ropi is set. The default is False. |
{RWPI} |
Has the value True if /rwpi is set. The default is False. |
{SWST} |
Has the value True if /swst is set. The default is False. |
{NOSWST} |
Has the value True if /noswst is set. The default is False. |
|
|
内置变量不能用SETA,SETL或SETS指令赋值。它们可以用在表达式或条件中,例如:
IF {ARCHITECTURE}=“4T”
|ads$version|必须全部用小写。其它的内置变量可以是大写,小写或者混合的。