资料介绍
在DSP的开发中,常用的算法都可以用C/C++代码来高效实现。但是对一些特殊寄存器的读写,例如某些CPU寄存器的读写,因为C/C++代码无法直接对其访问,仍然需要使用汇编代码进行操作。此外,在一些对代码执行时间要求很严格的算法,例如很多个点的FFT、IFFT中,汇编代码的高效仍然是C/C++所不能替代的。这些就涉及到了C/C++代码与汇编代码的接口问题,在此我们就来了解一下它们是如何交互的。首先要遵循以下的九大原则:
1. 所有的函数(不管是C/C++的还是汇编的)都要遵循特定的寄存器约定
寄存器约定用来规定编译器如何使用寄存器,主要指的CPU/FPU的寄存器(因为它们在程序运行中是反复使用的),并且在函数调用前后如何保存寄存器的值。保存寄存器值的方法分为在函数入口处保存和在调用时保存,前者是由被调用的函数来完成的,后者则是由调用别的函数的函数来完成的。在TMS320C28x编译器中,使用如下的规则,如表1、表2所示。通过表1、2,我们还可以对CPU/FPU的寄存器有进一步的理解,这样以后再看到寄存器的名字时就不至于一头雾水了。
表1 CPU寄存器使用和保留的约定
表2 FPU寄存器使用和保留的约定
编译器对CPU的状态寄存器ST中的某些位也有一定的约定,如表3、表4所示;没有列在表中的状态寄存器的位则不受编译器的影响。对其中的某些位,编译器会假设它们在函数调用或者返回时具有特定的假想值;在系统初始化建立C语言的实时运行环境时,这些位也会被初始化为特定的假象值。
- C++ Socket网络编程大全源代码下载 25次下载
- DSP载波移相控制C语言源代码下载 56次下载
- 使用C语言编程嵌入式DSP系统的方法和相关介绍说明 15次下载
- C5000 DSP系列器件的多通道汇编代码处理的详细资料概述 7次下载
- 如何从TMS320C54X到TMS320C55X的代码迁移详细英文资料概述 10次下载
- TMS320C54x汇编语言工具C/C++编译器的功能优化详细概述 10次下载
- 汇编语言与C语言整合至DSP的方法 5次下载
- 浅谈关于DSP6000中C/C++语言和汇编语言的混合编程的方法 1次下载
- 从汇编代码访问C全局变量 0次下载
- DSP编程技巧之五大使用代码优化的问题解析 3次下载
- C标准库源代码 21次下载
- DSP汇编语言编程基础
- 报警产生器小程序 (C语言+汇编程序源代码)
- C代码在TMS320C54X上的手工汇编优化
- TMS320C6000 系列DSP 的C 代码优化方法
- C语言代码的常用技巧 443次阅读
- armasm编译汇编代码链接失败的问题分析 607次阅读
- C语言代码规范 836次阅读
- C与C++混合编程是什么 1299次阅读
- 如何写要被C调用的汇编函数 1110次阅读
- 基于LabVIEW和单片机实现DSP应用程序代码的自举模块设计 1963次阅读
- C和汇编代码结合 是实现DSP软件设计的最好方式 2723次阅读
- 嵌入式C代码编码习惯要遵循哪些规则 3327次阅读
- C语言程序内存布局该关注哪些内容 878次阅读
- 了解“预编译、编译、汇编、链接”这四个过程对你有很大帮助 3.5w次阅读
- 学习开发环境和编程语言:汇编语言和C语言的比较 8893次阅读
- C51读写AT24C04源代码及AT24C04测试程序 1.6w次阅读
- 学嵌入式能不能只用C写程序? 5965次阅读
- STC12C5A60S2可编程时钟模块及系统省电模块代码 1.1w次阅读
- 快速傅里叶变换FFT的C程序代码实现 6w次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1489次下载 | 免费
- 2单片机典型实例介绍
- 18.19 MB | 91次下载 | 1 积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB | 27次下载 | 1 积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 5开关电源原理及各功能电路详解
- 0.38 MB | 9次下载 | 免费
- 6基于AT89C2051/4051单片机编程器的实验
- 0.11 MB | 4次下载 | 免费
- 7基于单片机和 SG3525的程控开关电源设计
- 0.23 MB | 3次下载 | 免费
- 8基于单片机的红外风扇遥控
- 0.23 MB | 3次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33562次下载 | 免费
- 6接口电路图大全
- 未知 | 30319次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21539次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935053次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537791次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233045次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183277次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
评论
查看更多