亚洲免费人人妻人人,cao78在线视频,福建一级毛片,91精品视频免费观看,高清另类图片操逼,日本特黄特色大片免费看,超碰欧美人人澡曰曰澡夜夜泛

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

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

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

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

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

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

作者:彭樹林

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

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

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

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

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

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

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

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ù)組時(shí),在查找第n個(gè)值時(shí)要利用乘法指令(序號(hào)乘以類型寬度),當(dāng)程序高速運(yùn)行時(shí),可能會(huì)影響其速度。

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

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

c語(yǔ)言心得體會(huì)04-30

c語(yǔ)言心得04-24

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

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

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

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

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

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

C語(yǔ)言課程教案04-24

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