ARM的汇编控制伪操作

; If assembled with TASM the variable {CONFIG} will be set to 16

; If assembled with ARMASM the variable {CONFIG} will be set to 32

; Set the variable THUMB to TRUE or false depending on whether the

; file is being assembled with TASM or ARMASM.

        GBLL    THUMB

        GBLL    ARM

    [ {CONFIG} = 16

THUMB   SETL    {TRUE}

ARM     SETL    {FALSE}

; If assembling with TASM go into 32 bit mode as the Armulator will

; start up the program in ARM state.

        CODE32

    |

THUMB   SETL    {FALSE}

ARM     SETL    {TRUE}

    ]

===========================================================

 其中[=IF , =ELSE ,]= ENDIF, CODE32 表明一下操作都在ARM状态。这些都是伪操作


{CONFIG} 是ARM 汇编器的内置变量,其不能通过SETA,SETL或SETS等指示符来设置,只能用表达式或条件来设置。内置变量介绍如下:


内置变量                              变量含义


{PC}或.                               

当前指令的地址


{VAR}或@                              

存储区位置计数器的当前值


{TRUE}                                

逻辑常量真


{FALSE}                               

逻辑常量假


{OPT}                    

当前设置列表选项值,OPT用来保存当前列表选项,改变选项值,恢复它的原始值


{CONFIG}                                 

如果汇编器汇编ARM代码,则值为32;如果汇编器汇编Thumb代码,则值为16


{ENDIAN}                                 

如果汇编器在大端模式下,则值为big;如果汇编器在小端模式下,则值为little 


{CODESIZE}                              

如果汇编器汇编ARM代码,则值为32;如果汇编器汇编Thumb代码,则值为16,与{CONFIG}同义


{CPU}                                      

选定的CPU名,缺省时为ARM7TDMI


{FPU}                                      

选定的FPU名,缺省时为SoftVFP


{ARCHITECTURE}                      

选定的ARM体系结构的值;3,3M,4,4T和4TxM


{PCSTOREOFFSET}                   

STR pc,[…]或STMRb,[…PC]指令的地址和PC存储值之间的偏移量


{ARMASM_VERSION}  

或| ads $ version |               

ARM汇编器的版本号,为整数


  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值