首页 > 其他 > 详细

arm 汇编——宏

时间:2014-04-11 11:35:11      阅读:506      评论:0      收藏:0      [点我收藏+]

在C语言中我们对于宏的操作都不会陌生   好处呢这里也就不多讲了 

提一点:有些函数  实体部分其实只有一行  这里可以进行宏代替   这样就可以减少函数的损耗   

函数的消耗对比于普通的宏来讲   主要在于进入函数的压栈  跳转   出函数的出栈   跳转 

宏没有这个过程  就等于较少了消耗


这里的arm汇编中给出  arm汇编和gnu  arm 汇编  对于宏的操作

arm汇编  

    MACRO                                                                   ;宏开始
$label HH $base,$ap,$d,$c,$b                                ;必须顶格写   声明宏名:HH   后面是他的四个参数

$label                                                                          ;宏的标签

    DCD (\base << 20) | (\ap << 10) | \                     ;宏的实体
           (\d << 5) | (1<<4) | (\c << 3) | (\b << 2) | (1<<1)
    MEND                                                                       ;宏结束的标志


gnu  arm汇编的宏

.macro HH base,ap,d,c,b                                          ;宏开始   宏名   参数
    .word (\base << 20) | (\ap << 10) | \                      ;宏实体部分
          (\d << 5) | (1<<4) | (\c << 3) | (\b << 2) | (1<<1)
.endm                                                                              ;宏结束


最后简单对比一下两种汇编:
1. 这里明显能看到的就是arm汇编要比 gnu汇编复杂   里面很有多的通配符  $  

不懂arm公司到底怎么了  这么喜欢这个标志  

2. arm汇编的宏实体  必须顶格   这是个很容易忽略的点   gnu就不会有这个问题  

arm 汇编——宏,布布扣,bubuko.com

arm 汇编——宏

原文:http://blog.csdn.net/weiwei_xiaoyu/article/details/23375771

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!