資料介紹
在DSP的開(kāi)發(fā)中,常用的算法都可以用C/C++代碼來(lái)高效實(shí)現(xiàn)。但是對(duì)一些特殊寄存器的讀寫(xiě),例如某些CPU寄存器的讀寫(xiě),因?yàn)镃/C++代碼無(wú)法直接對(duì)其訪問(wèn),仍然需要使用匯編代碼進(jìn)行操作。此外,在一些對(duì)代碼執(zhí)行時(shí)間要求很?chē)?yán)格的算法,例如很多個(gè)點(diǎn)的FFT、IFFT中,匯編代碼的高效仍然是C/C++所不能替代的。這些就涉及到了C/C++代碼與匯編代碼的接口問(wèn)題,在此我們就來(lái)了解一下它們是如何交互的。首先要遵循以下的九大原則:
1. 所有的函數(shù)(不管是C/C++的還是匯編的)都要遵循特定的寄存器約定
寄存器約定用來(lái)規(guī)定編譯器如何使用寄存器,主要指的CPU/FPU的寄存器(因?yàn)樗鼈冊(cè)诔绦蜻\(yùn)行中是反復(fù)使用的),并且在函數(shù)調(diào)用前后如何保存寄存器的值。保存寄存器值的方法分為在函數(shù)入口處保存和在調(diào)用時(shí)保存,前者是由被調(diào)用的函數(shù)來(lái)完成的,后者則是由調(diào)用別的函數(shù)的函數(shù)來(lái)完成的。在TMS320C28x編譯器中,使用如下的規(guī)則,如表1、表2所示。通過(guò)表1、2,我們還可以對(duì)CPU/FPU的寄存器有進(jìn)一步的理解,這樣以后再看到寄存器的名字時(shí)就不至于一頭霧水了。
表1 CPU寄存器使用和保留的約定
表2 FPU寄存器使用和保留的約定
編譯器對(duì)CPU的狀態(tài)寄存器ST中的某些位也有一定的約定,如表3、表4所示;沒(méi)有列在表中的狀態(tài)寄存器的位則不受編譯器的影響。對(duì)其中的某些位,編譯器會(huì)假設(shè)它們?cè)诤瘮?shù)調(diào)用或者返回時(shí)具有特定的假想值;在系統(tǒng)初始化建立C語(yǔ)言的實(shí)時(shí)運(yùn)行環(huán)境時(shí),這些位也會(huì)被初始化為特定的假象值。
- TMS320LF240x DSP的C語(yǔ)言和匯編代碼快速入門(mén)
- C++ Socket網(wǎng)絡(luò)編程大全源代碼下載 27次下載
- DSP載波移相控制C語(yǔ)言源代碼下載 57次下載
- C5000 DSP系列器件的多通道匯編代碼處理的詳細(xì)資料概述 7次下載
- 如何從TMS320C54X到TMS320C55X的代碼遷移詳細(xì)英文資料概述 10次下載
- TMS320C54x匯編語(yǔ)言工具C/C++編譯器的功能優(yōu)化詳細(xì)概述 10次下載
- 匯編語(yǔ)言與C語(yǔ)言整合至DSP的方法 5次下載
- 淺談關(guān)于DSP6000中C/C++語(yǔ)言和匯編語(yǔ)言的混合編程的方法 1次下載
- 從匯編代碼訪問(wèn)C全局變量 0次下載
- DSP編程技巧之五大使用代碼優(yōu)化的問(wèn)題解析 3次下載
- C標(biāo)準(zhǔn)庫(kù)源代碼 21次下載
- DSP匯編語(yǔ)言編程基礎(chǔ)
- 報(bào)警產(chǎn)生器小程序 (C語(yǔ)言+匯編程序源代碼)
- C代碼在TMS320C54X上的手工匯編優(yōu)化
- TMS320C6000 系列DSP 的C 代碼優(yōu)化方法
- C語(yǔ)言代碼的常用技巧 575次閱讀
- armasm編譯匯編代碼鏈接失敗的問(wèn)題分析 950次閱讀
- C語(yǔ)言代碼規(guī)范 1014次閱讀
- C與C++混合編程是什么 1744次閱讀
- 如何寫(xiě)要被C調(diào)用的匯編函數(shù) 1307次閱讀
- 基于LabVIEW和單片機(jī)實(shí)現(xiàn)DSP應(yīng)用程序代碼的自舉模塊設(shè)計(jì) 2093次閱讀
- C和匯編代碼結(jié)合 是實(shí)現(xiàn)DSP軟件設(shè)計(jì)的最好方式 2951次閱讀
- 嵌入式C代碼編碼習(xí)慣要遵循哪些規(guī)則 3444次閱讀
- C語(yǔ)言程序內(nèi)存布局該關(guān)注哪些內(nèi)容 942次閱讀
- 了解“預(yù)編譯、編譯、匯編、鏈接”這四個(gè)過(guò)程對(duì)你有很大幫助 3.5w次閱讀
- 學(xué)習(xí)開(kāi)發(fā)環(huán)境和編程語(yǔ)言:匯編語(yǔ)言和C語(yǔ)言的比較 9079次閱讀
- C51讀寫(xiě)AT24C04源代碼及AT24C04測(cè)試程序 1.7w次閱讀
- 學(xué)嵌入式能不能只用C寫(xiě)程序? 6059次閱讀
- STC12C5A60S2可編程時(shí)鐘模塊及系統(tǒng)省電模塊代碼 1.1w次閱讀
- 快速傅里葉變換FFT的C程序代碼實(shí)現(xiàn) 6.1w次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費(fèi)下載
- 0.00 MB | 1489次下載 | 免費(fèi)
- 2單片機(jī)典型實(shí)例介紹
- 18.19 MB | 91次下載 | 1 積分
- 3S7-200PLC編程實(shí)例詳細(xì)資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識(shí)別和講解說(shuō)明
- 4.28 MB | 18次下載 | 4 積分
- 5開(kāi)關(guān)電源原理及各功能電路詳解
- 0.38 MB | 9次下載 | 免費(fèi)
- 6基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
- 0.11 MB | 4次下載 | 免費(fèi)
- 7基于單片機(jī)和 SG3525的程控開(kāi)關(guān)電源設(shè)計(jì)
- 0.23 MB | 3次下載 | 免費(fèi)
- 8基于單片機(jī)的紅外風(fēng)扇遙控
- 0.23 MB | 3次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費(fèi)
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費(fèi)
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費(fèi)
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費(fèi)
- 6接口電路圖大全
- 未知 | 30319次下載 | 免費(fèi)
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費(fèi)
- 8開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21539次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537791次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191183次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183277次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138039次下載 | 免費(fèi)
評(píng)論