在嵌入式工程中处理汇编语言的技巧

ZDNet软件频道时间2003-09-12作者:ZDNet China |
本文关键词:embedded
本文译自Builder.com,未经许可请勿转载汇编语言可以为你提供按照自己的想法随意编写代码的自由,但是它却要求必须保证每一细节的正确性。在使用汇编语言来开发嵌入式项目之前,请阅读以下的技巧和方法。

理解系统的CPU体系

学习系统CPU文档。深入研究特别是指令和功能,比如硬件回路,位操作,缓冲转移,条件性执行,循环跳跃指令,以及非通用的体系操作。

查看地址模型。确认你一定知道ALU标志(零,进位,溢出等)以及它们如何被CPU体系所影响。

查看CPU是否包含特别的影响指令工作的模型。Intel x86的32位体系的实时受保护模式可以更改CPU的操作。其他体系也包含影响算法或者地址模型的特别模式。

理解汇编语言的语法

在汇编语言中很少有一致性,所以你必须学会如何定义基本的东西,如标签,数字,字符串,变量,以及注解。

查看你的汇编语言如何允许你将代码分成几个分隔的逻辑部分,这样就可以使用linker/loader将它们放置在CPU内存的不同区域。

始终如一的使用寄存器和标记

错误的出现一般都是在寄存器发生意外崩溃的时候。例如,一个函数可以损坏使用调用函数的寄存器的内容,或者改变一个使用中断服务程序的寄存器。

为了避免这些问题的产生,应该建立一些协定,这些协定包括:哪些寄存器用于传递参数和子程序的结果,哪些寄存器可以被子程序随意更改,哪些寄存器必须受到保护。

还有,可以考虑使用进位或零标记来显示从子程序中返回的状态,当一个错误出现时就执行一个额外的分支,这样的操作就显得很方便。

您看到此篇文章时的感受是:
支持
愤怒
无聊
暴汗
养眼
炒作
不解
标题党
搞笑
用户评论
用户名
评论内容
发表时间
- 发表评论 -
匿名
注册用户

百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134