RSS

ARM汇编器与GCC汇编器支持的汇编语言差别

来源:网络 作者:匿名 时间:2007-01-06 Tag: 点击:

问题: 请解释下面的一小段汇编语言程序:  

__main 
EXPORT BootReset 
BootReset 
         B resetvec  reqset 

         IMPORT        BootEntry 
         IMPORT        |Image$$RO$$Limit|  

         AREA          BOOTROM, CODE, READONLY 

         LDR       r0, =|Image$$RO$$Limit 

         BEQ       %1 

         ldr       pc, [pc,#-&F20] 
 
  回答: 上面是ARM公司编译器支持的汇编语言,移植成gas支持的汇编语言为:

__main 
.global BootReset                          /* 定义全局符号 BootReset */ 
BootReset: 
         B resetvec  reqset              /* 跳转到resetvec    */ 

         .extern        BootEntry         /* 定义引用的外部符号(函数)*/ 

         .extern        Image_RO_Limit   /* Image_RO_Limit 为外部符号,一般定义  */ 
                                              /* 在连接定位文件中, 表示ROM区大小 */ 

#        AREA          BOOTROM, CODE, READONLY 

         LDR       r0, =Image_RO_Limit  /* 将Image_RO_Limit值存储到R0*/ 

         BEQ       FUNC1                   /* 如果等于则跳转到符号FUNC1 */ 

         ldr       pc, [pc,#-0xF20]      /* 将PC-0xF20的值存储到PC */

1.部分资源来自网络,经ET电子归类整理,旨在服务电子爱好者并无商业目的,不保证正确性与完整性.
2.如果您觉得本站资源对您有用,请告知您的好友,用搜索引擎搜"ET电子"即可.


最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册
合作站点