最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

關(guān)于嵌入式C語言編程小知識總結(jié)

2022-03-14 14:43 作者:信盈達(dá)  | 我要投稿

1.?

流水線被指令填滿時才能發(fā)揮最大效能,即每時鐘周期完成一條指令的執(zhí)行(僅指單周期指令)。如果程序發(fā)生跳轉(zhuǎn),流水線會被清空,這將需要幾個時鐘才能使流水線再次填滿。

因此,盡量少的使用跳轉(zhuǎn)指令可以提高程序執(zhí)行效率,解決發(fā)案就是盡量使用指令的“條件執(zhí)行”功能。


2.?

通過下面語句將一個16位的變量放在兩個8位的變量中。

//IP數(shù)據(jù)報總長度高字節(jié)

IpHeadUint8[10]=(IpHead.e_ip.Crc&0xff00)>>8;

//IP數(shù)據(jù)報總長度低字節(jié)

IpHeadUint8[11]=IpHead.e_ip.Crc&0x00ff;


3.

在對全部數(shù)組元素賦初值時,可以不指定數(shù)組長度。

eg;inta={1,2,3,4,5};

但如果當(dāng)輸出第a[5]以上的元素時,系統(tǒng)回輸出隨機(jī)數(shù)值,所以使用此方法時,不能使用超過初始值元素以上的元素。


4.?

由于ADS先天性的對printf不支持;因此不便于我們調(diào)試,可以利用串口輸出來代替printf來調(diào)試。


5.

用或運算,可使某位置為1,其它位不變

eg: PINSEL0 |= 0x00000005; //設(shè)置串口引腳

使第0位和第二位置一,其他位不變。


6.?

C語言符號優(yōu)先級:

1>復(fù)合賦值運算符號:

a =3*5;

等價于a=a (3*5);


7.

一個常見的調(diào)試策略是把一些printf函數(shù)的調(diào)用散布于程序中,確定錯誤出現(xiàn)的具體位置。但是,這些函數(shù)調(diào)用的輸出結(jié)果被寫入到緩沖區(qū)中,并不立即顯示于屏幕上。

事實上,如果程序失敗,緩沖輸去可能不會被實際寫入,因此得到的錯誤位置就是錯誤的。解決的方法是在每個用于調(diào)試的printf函數(shù)之后立即調(diào)用fflush函數(shù)即可得到。


8.

關(guān)鍵字volatile的用法

volatile變量可能用于如下幾種情況:

1>設(shè)備的硬件寄存器(如:狀態(tài)寄存器)

2>一個中斷服務(wù)子程序中會訪問到的全局變量

3>多線程應(yīng)用中被幾個任務(wù)共享的變量。



聲明:

本文來源于網(wǎng)絡(luò),版權(quán)歸原作者所有,如來源信息有誤或侵犯權(quán)益,請聯(lián)系我們刪除或授權(quán)事宜。

關(guān)于嵌入式C語言編程小知識總結(jié)的評論 (共 條)

分享到微博請遵守國家法律
惠水县| 阿拉善右旗| 闸北区| 泰宁县| 星子县| 德州市| 灵山县| 托克逊县| 鄂伦春自治旗| 泸州市| 达孜县| 卢湾区| 凤冈县| 双流县| 孝义市| 荃湾区| 宜昌市| 山阳县| 青海省| 庆云县| 永靖县| 盖州市| 惠州市| 高雄县| 大厂| 博白县| 花莲县| 棋牌| 昌乐县| 茂名市| 航空| 璧山县| 龙井市| 莫力| 获嘉县| 吉首市| 乳源| 无棣县| 黄梅县| 满洲里市| 舒城县|