欧美另类日韩中文色综合,天堂va亚洲va欧美va国产,www.av在线播放,大香视频伊人精品75,奇米777888,欧美日本道免费二区三区,中文字幕亚洲综久久2021

在單片機(jī)C語言編程中的心得體會

時間:2023-04-25 21:50:35 心得體會 我要投稿
  • 相關(guān)推薦

在單片機(jī)C語言編程中的心得體會

在單片機(jī)C語言編程中的心得體會

在單片機(jī)C語言編程中的心得體會

在單片機(jī)C語言編程中的心得體會

作者:彭樹林

在單片機(jī)C語言編程中使用恰當(dāng)?shù)膬?yōu)化手段,可以寫出簡潔高效的代碼。以下是筆者在C51編程過程中的一點(diǎn)心得體會。

1.盡量使用短的數(shù)據(jù)類型。如uchar、bit、uint,有時需要對uchar數(shù)據(jù)類型進(jìn)行按位訪問,可將其定義在bdam區(qū)間。慎重使用float數(shù)據(jù)類型,有時它可以轉(zhuǎn)化成int數(shù)據(jù)類型來代用。

2.熟練指針的使用。例如Uint是由雙字節(jié)拼接而成,有時用來存放16位地址。獲取其高八位和低八位地址的方法為:只要用uchar*p;p=&int0,則*p表示其高八位,*(++p)表示其低八位,非常方便。

3.使用自加、自減的方法為:a++;a-,它會調(diào)用INC、DEC指令,效率遠(yuǎn)比a=a+1;a=a-1高。

4.循環(huán):使用uchar a;for(a=1;a≤8;a++)…時,條件a=8編譯后代碼比較繁瑣,可用for(a=8;a=a-1)…來代替,充分利用單片機(jī)的為零跳轉(zhuǎn)指令。同樣,在do{…}while()中也適用。

5.當(dāng)多個條件判別時,if(A&&B&&C&&D),只要第一個條件A不符合,程序是不管后面的條件的,所以可把最可能出錯的條件排在前面處理。

6.子程序的參量。調(diào)用子程序時若帶參量,程序會開辟存儲空間(如Rn)來存放參量,這個空間是可以充分利用的。如延時子程序void delay(uehar time){while(time一);J,可以延時相當(dāng)短的時間。

7.空指令NOP在C中用_nop一0實(shí)現(xiàn),定義在中。

8.求余運(yùn)算"%"操作是調(diào)用子程序來完成的,效率低。如果是求2的n次方的余數(shù),可使用位操作來代替。如:a=a%8可改用8=a&7,效率明顯提高。同樣2xN的乘除運(yùn)算可用移位來實(shí)現(xiàn)。如:a=a*2;b=h/2可改為a=a《1;b=b》1。

9.使用結(jié)構(gòu)體類型數(shù)組時,在查找第n個值時要利用乘法指令(序號乘以類型寬度),當(dāng)程序高速運(yùn)行時,可能會影響其速度。

10.Keil的軟件調(diào)試非常有用。筆者常將編譯后的程序與C源程序?qū)φ,查看匯編代碼、檢查不恰當(dāng)之處。有時還可用來計算子程序執(zhí)行時間(在確定精確延時程序參數(shù)時非常有用)。

【在單片機(jī)C語言編程中的心得體會】相關(guān)文章:

c語言心得體會04-30

c語言心得04-24

c語言的心得體會(精選11篇)11-02

c語言實(shí)習(xí)心得體會03-28

心得體會 c語言心得總結(jié)03-30

C語言實(shí)習(xí)的心得體會04-26

c語言的學(xué)習(xí)心得體會02-01

C語言實(shí)訓(xùn)心得體會05-24

C語言課程教案04-24

C語言學(xué)習(xí)心得體會03-21