C6000中C語言的程式設計及優化

2021-06-25 10:04:02 字數 510 閱讀 4762

1. 對資料型別的考慮

在編寫c語言程式時,要認真考慮資料型別的尺寸。c6000編譯器對每種資料型別都確認了乙個尺寸,其分配形式如下:

基於每種資料型別的尺寸,在編寫c語言的時候應遵循下述規則

2. 編譯c語言程式

(1)使用關鍵字restrict來標明乙個指標是指向乙個特定物件的唯一的指標。

(2)聯合使用-pm與-o3編譯選項

在使用-o3選項進行優化編譯時,盡量聯合使用-pm選項。-pm是程式級優化。在程式優化中,所有原始檔都被編譯到乙個中間檔案裡,編譯器在編譯時可以從整個程式的角度來觀察,一旦編譯器確定兩個指標不會訪問同乙個儲存器位址,它就會進行相應的一系列優化,有效的消除對相關性的擔憂。

(3)使用-mt選項

-mt選項是向編譯器說明在程式中沒有使用混迭技術,可以更積極的優化。

3. 優化c語言程式

(1)使用intrinsics(內聯函式)

(2)對短字長的資料使用寬長度的儲存器訪問(資料打包處理)

(3)軟體流水

C6000系列的外接flash的燒寫流程

ccs編譯生成的out格式檔案不能直接用於flash燒寫 在ti公司給出的技術文件中,首先將out檔案利用其hex工具轉換為hex格式檔案,然後利用flash燒寫工具將hex格式映像檔案寫入到片外flash中。實現在flash儲存器燒寫程式一般有以下三種方法 使用通用燒寫器燒寫需要將記憶體映像轉換為...

c語言程式設計 效能優化

使用巨集定義 在c語言中,巨集是產生內嵌 的唯一方法。對於嵌入式系統而言,為了能達到效能要求,巨集是一種很好的代替函式的方法。寫乙個 標準 巨集min 這個巨集輸入兩個引數並返回較小的乙個 錯誤做法 define min a,b a b a b 正確做法 define min a,b a b a b...

C語言程式設計 演算法優化

相信大多數計算機學者或從事與之相關工作的朋友都聽過這麼一句話 演算法是程式的靈魂。從這句話中我們就可以看到演算法在程式設計中的重要性。簡單來說,演算法 algorithm 是指完成乙個任務所需要的具體步驟和方法。也就是說給定初始狀態或輸入資料,能夠得出所要求或期望的終止狀態或輸出資料。在乙個c語言程...