1.從語言特點(diǎn)來說
①C語言有出色的可移植性,能在多種不同體系結(jié)構(gòu)的軟/硬平臺上運(yùn)行。
②簡潔緊湊,使用靈活的語法機(jī)制,并能直接訪問硬件能夠直接訪問硬件的語言有:匯編和C語言匯編屬于低級語言,難以完成一些復(fù)雜的功能,但是匯編比C語言訪問硬件的效率更高。所以,一般將硬件初始化的工作交給匯編,比較復(fù)雜的操作交給C語言。
③C語言具有很高的運(yùn)行效率。
2.嵌入式開發(fā)中的地位——開發(fā)工具
3.高級語言中的低級語言:面向過程VS面向?qū)ο?/p>
面向過程:
“面向過程”(Procedure Oriented)是一種以過程為中心的編程思想。“面向過程”也可稱之為“面向記錄”編程思想,他們不支持豐富的“面向?qū)ο蟆碧匦?比如繼承、多態(tài)),并且它們不允許混合持久化狀態(tài)和域邏輯。
面向過程就是分析出解決問題所需要的步驟,然后用函數(shù)把這些步驟一步一步實(shí)現(xiàn),使用的時候一個一個依次調(diào)用就可以了。面向過程其實(shí)是最為實(shí)際的一種思考方式,就算是面向?qū)ο蟮姆椒ㄒ彩呛忻嫦蜻^程的思想。
可以說面向過程是一種基礎(chǔ)的方法,它考慮的是實(shí)際地實(shí)現(xiàn)。一般的面向過程是從上往下步步求精,所以面向過程最重要的是模塊化的思想方法。
面向?qū)ο螅?/p>
面向?qū)ο蟮姆治龈鶕?jù)抽象關(guān)鍵的問題域來分解系統(tǒng)。面向?qū)ο蟮脑O(shè)計是一種提供符號設(shè)計系統(tǒng)的面向?qū)ο蟮膶?shí)現(xiàn)過程,它用非常接近實(shí)際領(lǐng)域術(shù)語的方法把系統(tǒng)構(gòu)造成“現(xiàn)實(shí)世界”的對象。
面向?qū)ο蟪绦蛟O(shè)計可以看作一種在程序中包含各種獨(dú)立而又互相調(diào)用的對象的思想,這與傳統(tǒng)的思想剛好相反:傳統(tǒng)的程序設(shè)計主張將程序看作一系列函數(shù)的集合,或者直接就是一系列對電腦下達(dá)的指令。面向?qū)ο蟪绦蛟O(shè)計中的每一個對象都應(yīng)該能夠接受數(shù)據(jù)、處理數(shù)據(jù)并將數(shù)據(jù)傳達(dá)給其它對象,因此它們都可以被看作一個小型的“機(jī)器”,即對象。
面向過程和面向?qū)ο蟮膮^(qū)別:
以一個人從A地到B地為例,面向過程就是需要規(guī)劃路線,了解路況,自己做好一系列的準(zhǔn)備;而面向?qū)ο缶褪亲弦惠v出租車,告訴司機(jī)我要去B地就可以了,不用關(guān)心其他的事情。
最后,C語言也有他自身的缺陷,比如代碼的復(fù)用性差,代碼的維護(hù)性差,擴(kuò)展性(新增代碼時不改變原來的代碼)很差。
-
嵌入式
+關(guān)注
關(guān)注
5152文章
19675瀏覽量
317546 -
C語言
+關(guān)注
關(guān)注
180文章
7632瀏覽量
141736
原文標(biāo)題:嵌入式開發(fā)為什么選擇C語言?
文章出處:【微信號:mcuworld,微信公眾號:嵌入式資訊精選】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
嵌入式開發(fā)就業(yè)還有前景嗎?
嵌入式開發(fā)入門指南:從零開始學(xué)習(xí)嵌入式
嵌入式開發(fā):高門檻的系統(tǒng)性工程與 996 的行業(yè)困局

Python在嵌入式系統(tǒng)中的應(yīng)用場景
代碼+案例+生態(tài):武漢芯源半導(dǎo)體CW32嵌入式開發(fā)實(shí)戰(zhàn)正式出版
如何成為嵌入式開發(fā)工程師?
嵌入式開發(fā)必備-RK3562演示Linux常用系統(tǒng)查詢命令(上)觸覺智能出品

新手怎么學(xué)嵌入式?
如何使用 RISC-V 進(jìn)行嵌入式開發(fā)
零基礎(chǔ)嵌入式開發(fā)學(xué)習(xí)路線
嵌入式開發(fā)常見問題排查

嵌入式開發(fā)常用軟件有哪些?
一種常用嵌入式開發(fā)代碼庫

AWFlow:內(nèi)置豐富的功能節(jié)點(diǎn),簡化嵌入式開發(fā)流程

評論