姓名:袁永輝? ? ? 學號:17101223423
轉(zhuǎn)載自:http://mp.weixin.qq.com/s/137dujzLKbsZTuR2fAAMDg
【嵌牛導讀】:嵌入式開發(fā)是在操作系統(tǒng)內(nèi)部做開發(fā)的褪那,操作系統(tǒng)所有的內(nèi)核幾乎都是C語言編寫,如果我們也使用C語言做開發(fā)胖眷,必定會具備一定的優(yōu)勢武通。
【嵌牛鼻子】:嵌入式開發(fā) c語言
【嵌牛提問】:為什么嵌入式編程思想要選c語言呢霹崎?
【嵌牛正文】:
眾所周知珊搀,C語言在嵌入式開發(fā)中占有十分重要的地位,它們的關(guān)系非比尋常尾菇。那么為什么嵌入式開發(fā)會選擇C語言境析,而不是其他語言呢?
嵌入式開發(fā)是在操作系統(tǒng)內(nèi)部做開發(fā)的派诬,操作系統(tǒng)所有的內(nèi)核幾乎都是C語言編寫劳淆,如果我們也使用C語言做開發(fā),必定會具備一定的優(yōu)勢默赂。
再者沛鸵,C語言相較其他的高級編程語言,其所有的特點對于嵌入式開發(fā)軟件是再合適不過的了。
C語言的特點如下:
· C語言具有出色的可移植性曲掰,能在多種不同體系結(jié)構(gòu)的軟/硬件平臺上運行疾捍。
· C語言具有簡潔緊湊、使用靈活的語法機制栏妖,并能直接訪問硬件乱豆。
· C語言具有很高的運行效率。
嵌入式軟件一般需著重考慮三個方面:性能吊趾、安全性和開發(fā)效率(包括代碼可移植性等)宛裕。
性能(運行效率)方面,匯編明顯是最高的论泛。但匯編在安全性和開發(fā)效率方面明顯是最低的揩尸。所以除非是要求極端高性能的嵌入式平臺(或者是系統(tǒng)實在是太簡單而沒辦法支持高級語言),使用匯編語言的不多孵奶。我們一般進行初始化時會使用匯編語言疲酌。
而其它高級語言的運行效率一般比較低(C程序運行效率可達匯編的80%,而其它程序可能只有C程序的80%)了袁,源代碼和目標代碼也可能會比較長朗恳。這樣占用的內(nèi)存也會比較大。嵌入式開發(fā)的編程是要在開發(fā)板上跑的载绿,占用內(nèi)存的增多必然會影響性能粥诫。這樣一來,C語言的優(yōu)勢就會凸現(xiàn)出來啦崭庸。
但是C語言也并不是完美無瑕的怀浆,它也是有一些缺點的。譬如:
· 代碼的復用性差
· 代碼的可擴展性差
· 代碼的維護性差
所以我們在編寫c語言代碼的時候怕享,要盡量克服避免這些缺點执赡,提高代碼的質(zhì)量。還是可以接受的函筋。