资料
  • 资料
  • 专题
基于ARM的嵌入式系统程序开发要点(六)——开发高效程序的技...
推荐星级:
类别: 消费电子
时间:2020-01-09
大小:267.32KB
阅读数:288
上传用户:wsu_w_hotmail.com
查看他发布的资源
下载次数
0
所需E币
5
ebi
新用户注册即送 300 E币
更多E币赚取方法,请查看
close
资料介绍
基于ARM的嵌入式系统程序开发要点(六)——开发高效程序的技巧产业技术与信息 I ND US TR Y TE CH &I NF O 基于 ARM 的嵌入式系统程序开发要点(六)                   ― ―开发高效程序的技巧 ■ ARM 中国   费浙平 开发高效率的程序涉及很多方面, 包括编程风格、 算法实现、 针对目标的特殊优化等。 这部分主要从 A R M 的体系结构特点出发, 介绍几个程序开发中的注 意点。 在 3 2 位的寄存器中进行符号扩展,其中带符号的变量, 要用逻辑左移(L S L ) 接算术右移(A S R ) 两条指令才 能完成符号扩展 ; 无符号的变量, 要使用一条逻辑与 (A N D) 指令对符号位进行清零。 所以, 使用 32 位的 i n t 或 unsigned int局部变量最有效率。 int wordinc (int a) { return a + 1; } short shortinc (short a) { return a + 1; } wordinc ADD a1,a1,#1 MOV PC,LR shortinc ADD a1,a1,#1 MOV a1,a1,LSL #16 MOV a1,a1,ASR #16 MOV PC,LR 1 变量定义 变量定义虽然很简单, 但是也有很多值得注意的地 方。 先看下面一个例子: char short char int a; b; c; d; char char short int a; c; b; d; 这里定义的 4 个变量形式都一样, 只是次序不同, 却 导致了在最终映像中不同的数据布局, 如图 1 所示。显 然, 第二种方式节约了更多的存储器空间。 char charinc (char a) { return a + 1; } charinc ADD a1,a1,#1 AND a1,a1,#&ff MOV PC,LR……
版权说明:本资料由用户提供并上传,仅用于学习交流;若内容存在侵权,请进行举报,或 联系我们 删除。
相关评论 (下载后评价送E币 我要评论)
没有更多评论了
  • 可能感兴趣
  • 关注本资料的网友还下载了
  • 技术白皮书