亚洲an日韩专区在线-亚洲an天堂an在线观看-亚洲a区视频-亚洲a图-免费黄网大全-免费黄网在线

如何編寫電力實時應用的運行在DSP上的高效C代碼

2013-12-12 10:46:22 電力信息化  點擊量: 評論 (0)
摘要:數字信號處理器(DSP)因其出色的處理能力,在包括電力應用在內的各個領域得到十分廣泛的應用。為了滿足電力應用的高實時性的要求,需要為DSP編寫高效的代碼。目前對DSP進行程序設計時,使用得最多的是C語
了提高代碼的空間效率,下面列出了幾點建議:
a) 減少常量的申明和定義,多使用預定義語句“#define”。對于常量數組的申明和定義應該盡量減少,可能的話還可以通過對數據類型的調整來節省常量數組所占用的內存空間。對于一般的常量,都需要用預定義語句“#define”來進行預定義。這樣,在編譯的時候,常量以立即數的形式存在于程序空間中,但這并沒有增加代碼在程序空間上的開銷。如果不使用預定義,而是申明和定義了一些常量,這些常量都要在數據空間中占用一部分存儲單元。
b) 減少變量的申明和定義。在很多時候,我們都不能保證我們使用的變量數目是最少的。通常我們會使用冗余的變量來增加代碼的可讀性。這在其他情況下是無可厚非的,但是在對DSP進行程序設計的時候,我們需要保證我們使用了最少的變量。對于中轉數據或臨時存放數據的變量而言,很多是不必要的,可以設法將其刪除。這樣做有助于減小代碼的數據空間,同時還減少了不必要的冗余操作,既提高的代碼的空間效率,又提高了代碼的時間效率。
c) 盡量使用全局變量。在一般的C語言程序設計中,我們不提倡過多地使用全局變量,因為全局變量的使用容易造成程序的結構模糊,函數之間的關聯性增強,影響了程序的可讀性和結構化【1】。但是在DSP的C語言程序設計中,由于程序的規模不大,并且以數據運算和硬件操作為主,因此全局變量的使用不會使程序變得難以理解。相反,因為全局變量在程序中容易觀察,因此,給程序員對代碼的剖析帶來方便,有助于對代碼的調試。絕大多數DSP代碼都是面向過程的,并且以對全局變量的操作為基礎,以實現其功能。而很多全局變量可以在代碼執行的不同階段被復用而不引起沖突,這樣就大大節省了代碼在數據空間上的開銷。
d) 整個代碼中反復使用的部分代碼應該盡量寫成函數的形式在代碼中被調用。這樣做可以減少代碼的重復部分,節省了重復部分所占用的額外的程序空間。而由此帶來的代碼時間效率的下降是微乎其微的。
e) 盡量使用循環語句。循環語句的使用也在一定程度上減少的代碼的重復,節省了程序空間。
3.2 提高代碼的時間效率
代碼的時間效率也可以理解成代碼執行時間的長短。為了能使代碼在完成同樣功能的前提下在更短的時間內執行完畢,需要對代碼進行優化,下面列出了幾條建議。
3.2.1 少用指針,多用下標
這里指的是對數組的操作。在C語言的教材中一般都會提到數組操作的兩種方式:指針方式和下標方式【1】。一般,教材會推薦使用指針方式,而指針方式也是C標
大云網官方微信售電那點事兒

責任編輯:和碩涵

免責聲明:本文僅代表作者個人觀點,與本站無關。其原創性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實相關內容。
我要收藏
個贊
?
主站蜘蛛池模板: 手机看片日韩国产 | 美女视频黄的免费看网站 | 黄色综合网 | 亚洲 欧美 激情 另类 校园 | 欧美69视频在线 | 久久一本色道综合 | 台湾三级香港三级在线中文 | 毛片免费全部免费观看 | 国产精品网址 | 狠狠综合久久久久综合小说网 | 国产精品李雅在线观看 | 欧美人成人亚洲专区中文字幕 | 久久精品一级 | 成年片美女福利视频在线 | 99亚洲自拍 | 精品中文字幕在线 | 亚洲国产成人久久综合野外 | 亚洲精品美女 | 美女黄网站色一级毛片 | 久久精品国产99国产精品免费看 | 国产理伦 | 亚洲高清综合 | 久久久久久久岛国免费观看 | 免费观看性欧美大片无片 | 中文字幕一区二区小泽玛利亚 | 99久久99这里只有免费费精品 | 亚洲三级在线视频 | 日韩中文字幕在线免费观看 | 亚洲一区免费在线 | 国产成人精品亚洲777图片 | 免费的毛片 | 精品久久久中文字幕二区 | 亚洲欧美一区二区久久香蕉 | 久久久久久免费播放一级毛片 | 久久精品一区二区影院 | 一级欧美过瘾大片 | 亚洲 欧美 精品 | 久草免费色站 | 久久久久毛片免费观看 | 99免费在线视频 | 日韩最新中文字幕 |