DSP反汇编编程技巧中编译器的使用

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

本文链接地址: DSP反汇编编程技巧中编译器的使用:http://www.mcucd.com/dsb/56.html
联系信息:单片机疑难问题咨询:方先生 手机:15328075932 QQ:67828115

版权声明 本文部分文字和图片来源于互联网,如有侵犯您的权利请发送内容至:173323810@qq.com,我们将立即删除!