DSP编程技巧之10-揭开编译器神秘面纱之汇编器选项

发布时间:2014-9-29 10:15    发布者:看门狗
关键词: DSP , 嵌入式 , 汇编器
作者:paradoxfx 来源:电子产品世界

  在DSP的编程中,虽然C编译器的效率很高,使得我们可以使用C/C++完成大部分的编程工作,例如对运算的实时性要求不是特别高的算法工作,比如PWM产生、电机的控制等等;但是一些对实时性要求非常高的算法,例如FFT、IFFT、除法/正余弦/反正切(编译器调用多条语句实现对ROM中数学表的调用,例如除法用到了十几条跳转、赋值指令)等,仍然需要使用汇编语言才能实现最优的运行效率;对于一些特殊操作,例如某些bootloader、某些特殊寄存器的读取/赋值,特别是一些CPU寄存器的赋值,也需要使用汇编语言才能完成;例如在编程中我们对一些EALLOW保护的寄存器进行写操作时,也需要使用相关的EALLOW和EDIS来解除保护、完成赋值然后恢复保护,虽然在C编程时我们直接书写的是EALLOW和EDIS两条语句,但是追根溯源,它们的本体是在头文件中定义了的asm("EALLOW")和asm("EDIS")两条内嵌汇编语句。此外,我们用C写的语句在从编译到生成二进制输出文件的整个过程中,必不可少地要经过从C到汇编的转换过程,所以了解汇编器的选项对我们理解程序的编译与运行过程也是非常重要的。下面就看一下汇编器的相关选项。

1.png
2.png
3.png

  如果想更好地理解汇编相关的选项并更高效地使用汇编语言编程的话,可以再去参考一下汇编工具指南《TMS320C28x Assembly Language Tools User's Guide》和汇编指令指南《TMS320C28x CPU and Instruction Set Reference Guide》;当然痛苦的是这些资料都没有汉语的啊。


本文地址:https://www.eechina.com/thread-133206-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
tony02778 发表于 2014-10-4 21:20:53
非常感谢
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表