歡迎來到培訓(xùn)無憂網(wǎng)!

全國(guó)切換

咨詢熱線 400-001-5729

位置:培訓(xùn)無憂網(wǎng) > 新聞資訊 > 電腦/IT > 嵌入式開發(fā) >  嵌入式開發(fā)培訓(xùn)之如何優(yōu)化代碼?

嵌入式開發(fā)培訓(xùn)之如何優(yōu)化代碼?

來源:培訓(xùn)無憂網(wǎng) 發(fā)布人:星星

2022-01-18 11:56:11|已瀏覽:5042次

嵌入式開發(fā)優(yōu)化代碼

       很多人會(huì)發(fā)現(xiàn),在做完項(xiàng)目,交了產(chǎn)品后,雖然代碼是自己寫的,但是維護(hù)起來卻好像是不是自己寫的一樣,而且錯(cuò)漏百出,讓人大跌眼鏡,這就是編程時(shí)沒有好好進(jìn)行代碼優(yōu)化的結(jié)果。

       進(jìn)行代碼的優(yōu)化首先要熟悉算法語(yǔ)言,比如將比較慢的順序查找法用較快的二分查找法或亂序查找法代替,插入排序或冒泡排序法用快速排序、合并排序或根排序代替,這樣可以大大提高程序執(zhí)行的效率。

       而選擇合適的數(shù)據(jù)對(duì)代碼優(yōu)化來說也是非常有幫助的,比如說在隨機(jī)存放的數(shù)據(jù)中鏈表肯定沒有插入和刪除來得快。當(dāng)然數(shù)據(jù)類型也要盡量小,比如能用char就不要用int,能用整型變量定義的變量替代long int,那就替換掉。同時(shí),運(yùn)算強(qiáng)度也要減少,復(fù)雜的表達(dá)式雖然看著長(zhǎng)度上沒什么變化,但是表達(dá)上卻是不一樣的,就好像a=pow(a,2.0);可以改成a=a*a;。
       對(duì)于一些不需要循環(huán)變量參加運(yùn)算的任務(wù)可以把它們放到循環(huán)外面,這里的任務(wù)包括表達(dá)式、函數(shù)的調(diào)用、指針運(yùn)算、數(shù)組訪問等,應(yīng)該將沒有必要執(zhí)行多次的操作全部集合在一起,放到一個(gè)init 的初始化程序中進(jìn)行。當(dāng)然,咱們還可以使用查表,在線匯編等方式去進(jìn)行代碼優(yōu)化,在嵌入式中并沒有唯一的解決方法,只有合適的解決辦法,至于哪個(gè)才是最合適的,那就要大家好好學(xué)習(xí),天天向上了。

      注:尊重原創(chuàng)文章,轉(zhuǎn)載請(qǐng)注明出處和鏈接 http://www.elsolbar.com/news-id-15975.html 違者必究!部分文章來源于網(wǎng)絡(luò)由培訓(xùn)無憂網(wǎng)編輯部人員整理發(fā)布,內(nèi)容真實(shí)性請(qǐng)自行核實(shí)或聯(lián)系我們,了解更多相關(guān)資訊請(qǐng)關(guān)注嵌入式開發(fā)頻道查看更多,了解相關(guān)專業(yè)課程信息您可在線咨詢也可免費(fèi)申請(qǐng)?jiān)囌n。關(guān)注官方微信了解更多:150 3333 6050

留下你的信息,課程顧問老師會(huì)一對(duì)一幫助你規(guī)劃更適合你的專業(yè)課程!
  • 姓名:

  • 手機(jī):

  • 地區(qū):

  • 想學(xué)什么:

  • 培訓(xùn)無憂網(wǎng)
免 費(fèi) 申 請(qǐng) 試 聽
提交申請(qǐng),《培訓(xùn)無憂網(wǎng)》課程顧問老師會(huì)一對(duì)一幫助你規(guī)劃更適合你的專業(yè)課程!