DSP編程技巧之25---C/C++與匯編語言的交互之-(3)使用編譯器的內聯(lián)函數
在C/C++與匯編語言混合編程的情況下,一般我們都會選擇C/C++來實現所期待的功能。在我們用C/C++來實現某些位操作、數學運算等功能后,編譯器會盡可能地把它們編譯為一些已經高度優(yōu)化的匯編函數(內聯(lián)函數),一般情況下是一條或者多條匯編指令的集合,在封裝之后,我們可以在C/C++編程的時候直接使用這樣的內聯(lián)函數。如果不直接使用它們,那么在單步調試的時候,也可以從C/C++代碼編譯生成的匯編代碼中找到對應的內聯(lián)函數,能夠幫助我們加深對編譯和代碼執(zhí)行的理解。這些編譯器的內聯(lián)函數都有一個顯著的外觀,即以兩個下劃線作為開頭,而使用方法則與C/C++編程中函數的調用形式是一樣的。例如:
本文引用地址:http://m.butianyuan.cn/article/265102.htmlong lvar;
int ivar;
unsigned int uivar;
lvar = __mpyxu(ivar, uivar);
下面我們就列舉一下TMS320C28x C/C++ 編譯器的內聯(lián)函數。為了方便對比說明,表格并不是完全安裝函數名的字母順序來排列的。
表1 TMS320C28x C/C++ 編譯器的內聯(lián)函數列表
表2 TMS320C28x C/C++ 編譯器的內聯(lián)函數列表-面向FPU
逆變器相關文章:逆變器原理
可控硅相關文章:可控硅工作原理
逆變器相關文章:逆變器工作原理
比較器相關文章:比較器工作原理
c++相關文章:c++教程
評論