資料介紹
在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次下載 | 免費
評論
查看更多