《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 業界動態 > DSP編程技巧之:控制與語言選項以及預處理與診斷

DSP編程技巧之:控制與語言選項以及預處理與診斷

2015-09-18
關鍵詞: DSP 編程技巧

  在前面幾期中,我們了解到DSP編程技巧之:編譯流程與處理器選項、DSP編程技巧之:程序優化、DSP編程技巧之:調試與路徑選項,今天為大家講解控制與語言選項以及預處理與診斷。
  編譯器有一些控制選項,這些選項是供我們來控制編譯器的,不像前幾篇文章提到的那些選項那樣,是編譯器用來控制編譯結果的。下面我們就來看看我們可以使用的控制編譯器的選項有哪些:
  就編譯器本身來說,它只要讀取C、C++、匯編等文件進行處理就完成任務了,所以編譯器的控制選項并不多,一般情況下一個-z選項就足夠我們完成從編譯程序到生成目標的編譯器控制效果了。相比較而言,C、C++這些語言本身就復雜的多了,并且因為有很多個版本的存在,難免有一些小混亂的存在,所以編譯器里與編程語言本身相關的選項就顯得特別多,以便我們來對語言的特性等進行正確使用,下面就看看編譯器里與編程語言有關的選項:
  從表2里也可以看出,大部分特性是與C++編程息息相關的,如果僅僅使用C進行一些編程的話,對編譯器的編程語言選項的使用確實要簡單了不少。

  在編程軟件例如CCS中編程時,代碼分析工具可以方便我們對代碼進行分析,例如我們把鼠標指向一個函數名的時候,所指的地方就能出來一個實時菜單,使得我們可以直接定位到函數的聲明、被調用的位置或者某個宏定義等等,非常方便。這種功能是如何實現的呢?在編譯器的前端是一個語義解析器,它負責把源程序中的token找出來,然后解析器parser(也有的地方叫分析器)就可以解析這些token,并產生樹狀表,供編程環境使用;此外解析器還可以完成一部分的語法錯誤檢查功能。如果希望了解關于解析器的更詳細的信息,可以參考編譯原理方面最著名的“龍書”,即《Compliers: Principles, Techniques, &Tools》;在K&RC語言文檔的A12這一節中也對解析器的預處理功能進行了詳細的敘述,它預處理的信息主要包括:
  1. 宏定義和擴展,例如_INLINE;
  2. #include引用的文件,包括<>和“”兩種方法引用的頭文件;
  3. 條件編譯指令,例如#if,#endif等等;
  4. 其它的多種預處理指令,主要是#開頭的一些指令,例如#error。
  我們可以控制編譯器的預處理選項,使得解析器根據我們的需求產生需要的預處理結果,方便我們對程序的開發調試;這些選項如表1所示。
  因為預處理器要使用到文件中的符號信息,所以相關的預定義信息一定要提供給預處理器,否則找不到符號信息就要報錯了。符號選項比較簡單,就是預定義與解除定義,如表2所示。

  在程序的處理過程中,我們可以控制編譯器輸出診斷信息選項,使得它輸出我們期望的詳細信息,更加容易定位和解決一些看起來難以捉摸的問題;這些選項如表3所示。需要注意的是,診斷信息相關的選項必須放在鏈接器選項--run_linker之前。

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 日本特级黄色 | 欧美日韩国产另类一区二区三区 | 欧美亚洲视频 | 涩涩视频www在线观看入口 | 日本欧美人xxxxx在线观看 | 免费人成在线观看视频色 | 国产一级淫片免费播放 | 有色hd | 国产精品不卡在线观看 | 91国内精品久久久久怡红院 | 日韩人成免费网站大片 | 美女羞羞免费网站 | 久久综合中文字幕一区二区 | 成 人 黄 色 视频免费播放 | 午夜影院在线观看免费 | 伦理片免费观看 | 日本韩国欧美在线 | 99免费在线观看视频 | 在线播放另类 | 午夜高清视频在线观看 | 好男人午夜www视频在线观看 | h网站免费在线观看 | 日日摸夜夜添夜夜添aa | 亚洲另类自拍丝袜第1页 | 男女一起www免费高清视频 | 国产精品二区三区免费播放心 | 午夜免费剧场 | 黑人黄色一级片 | 精品精品国产欧美在线观看 | 黄色小视屏 | 亚洲综合国产 | 久久黄色毛片 | 在线一区免费播放 | 日韩免费毛片全部不收费 | 欧美高清一区二区 | 欧美精选欧美极品 | 福利免费观看 | 最近2019中文免费字幕 | 黄色免费在线观看 | 中文字幕亚洲图片 | 天天噜天天干 |