新聞中心

        EEPW首頁 > 嵌入式系統 > 學習方法與實踐 > ARM程序設計優化策略與技術

        ARM程序設計優化策略與技術

        ——
        作者: 時間:2007-12-10 來源:單片機與嵌入式系統應用 收藏

                是指軟件編程結束后,利用軟件開發工具對進行調整和改進,讓充分利用資源, 提高運行效率, 縮減代碼尺寸的過程。按照的側重點不同, 程序可分為運行速度優化和代碼尺寸優化。

                運行速度優化是指在充分掌握軟硬件特性的基礎上, 通過應用程序結構調整等手段來降低完成指定任務所需執行的指令數。在同一個處理器上, 經過速度優化的程序比未經優化的程序在完成指定任務時所需的時間更短,即前者比后者具有更高的運行效率。代碼尺寸優化是指,采取措施使應用程序在能夠正確完成所需功能的前提下, 盡可能減少程序的代碼量。

                 然而在實際的程序過程中,程序優化的兩個目標(運行速度和代碼大小) 通常是互相矛盾的。為了提高程序運行效率,往往要以犧牲存儲空間、增加代碼量為代價, 例如程序中經常使用的以查表代替計算、循環展開等方法就容易導致程序代碼量增加。而為了減少程序代碼量、壓縮存儲器空間,可能又要以降低程序運行效率為代價。因此, 在對程序實施優化之前, 應先根據實際需求確定相應的策略。在處理器資源緊張的情況下, 應著重考慮運行速度優化;而在存儲器資源使用受限的情況下, 則應優先考慮代碼尺寸的優化。

                 1 程序運行速度優化


               程序運行速度優化的方法可分為以下幾大類。
               1.1 通用的優化方法
               (1)減小運算強度

                利用左/ 右移位操作代替乘/ 除2 運算:通常需要乘以或除以2 的冪次方都可以通過左移或右移n 位來完成。實際上乘以任何一個整數都可以用移位和加法來代替乘法。 7 中加法和移位可以通過一條指令來完成,且執行時間少于乘法指令。例如: i = i 

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 长宁区| 江油市| 怀化市| 四会市| 浙江省| 宣威市| 来宾市| 竹溪县| 屏边| 普陀区| 上虞市| 若尔盖县| 彰化县| 仁布县| 昭苏县| 定州市| 吴桥县| 游戏| 兴义市| 长葛市| 贵溪市| 池州市| 上林县| 乌拉特前旗| 武鸣县| 安泽县| 合阳县| 石狮市| 沙湾县| 南丰县| 万盛区| 丹东市| 中江县| 伊宁县| 德惠市| 大洼县| 富锦市| 光山县| 封开县| 济源市| 菏泽市|