當(dāng)前位置:首頁(yè) > 公眾號(hào)精選 > 嵌入式微處理器
[導(dǎo)讀]01、C語(yǔ)言和匯編語(yǔ)言在開(kāi)發(fā)單片機(jī)時(shí)各有哪些優(yōu)缺點(diǎn)? 匯編語(yǔ)言是一種用文字助記符來(lái)表示機(jī)器指令的符號(hào)語(yǔ)言,是最接近機(jī)器碼的一種語(yǔ)言。其主要優(yōu)點(diǎn)是占用資源少、程序執(zhí)行效率高。但是不同的CPU,其匯編語(yǔ)言可能有所差異,所以不易移植。 C語(yǔ)言是一種結(jié)構(gòu)化的


01、C語(yǔ)言和匯編語(yǔ)言在開(kāi)發(fā)單片機(jī)時(shí)各有哪些優(yōu)缺點(diǎn)?


匯編語(yǔ)言是一種用文字助記符來(lái)表示機(jī)器指令的符號(hào)語(yǔ)言,是最接近機(jī)器碼的一種語(yǔ)言。其主要優(yōu)點(diǎn)是占用資源少、程序執(zhí)行效率高。但是不同的CPU,其匯編語(yǔ)言可能有所差異,所以不易移植。

C語(yǔ)言是一種結(jié)構(gòu)化的高級(jí)語(yǔ)言。其優(yōu)點(diǎn)是可讀性好,移植容易,是普遍使用的一種計(jì)算機(jī)語(yǔ)言。缺點(diǎn)是占用資源較多,執(zhí)行效率沒(méi)有匯編高。

對(duì)于目前普遍使用的RISC架構(gòu)的8bit MCU來(lái)說(shuō),其內(nèi)部ROM、RAM、STACK等資源都有限,如果使用C語(yǔ)言編寫(xiě),一條C語(yǔ)言指令編譯后,會(huì)變成很多條機(jī)器碼,很容易出現(xiàn)ROM空間不夠、堆棧溢出等問(wèn)題。而且一些單片機(jī)廠家也不一定能提供C編譯器。而匯編語(yǔ)言,一條指令就對(duì)應(yīng)一個(gè)機(jī)器碼,每一步執(zhí)行什幺動(dòng)作都很清楚,并且程序大小和堆棧調(diào)用情況都容易控制,調(diào)試起來(lái)也比較方便。所以在資源較少的單片機(jī)開(kāi)發(fā)中,還是建議采用匯編語(yǔ)言比較好。

02、C或匯編語(yǔ)言可以用于單片機(jī),C++能嗎?

在單片機(jī)開(kāi)發(fā)中,主要是匯編和C,沒(méi)有用C++的。

03、搞單片機(jī)開(kāi)發(fā),一定要會(huì)C嗎?

匯編語(yǔ)言是一種用文字助記符來(lái)表示機(jī)器指令的符號(hào)語(yǔ)言,是最接近機(jī)器碼的一種語(yǔ)言。其主要優(yōu)點(diǎn)是占用資源少、程序執(zhí)行效率高。但是不同的CPU,其匯編語(yǔ)言可能有所差異,所以不易移植。

而C語(yǔ)言是一種編譯型程序設(shè)計(jì)語(yǔ)言,它兼顧了多種高級(jí)語(yǔ)言的特點(diǎn),并具備匯編語(yǔ)言的功能。C語(yǔ)言有功能豐富的庫(kù)函數(shù)、運(yùn)算速度快、編譯效率高、有良好的可移植性,而且可以直接實(shí)現(xiàn)對(duì)系統(tǒng)硬件的控制。C語(yǔ)言是一種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言,它支持當(dāng)前程序設(shè)計(jì)中廣泛采用的由頂向下結(jié)構(gòu)化程序設(shè)計(jì)技術(shù)。此外,C語(yǔ)言程序具有完善的模塊程序結(jié)構(gòu),從而為軟件開(kāi)發(fā)中采用模塊化程序設(shè)計(jì)方法提供了有力的保障。因此,使用C語(yǔ)言進(jìn)行程序設(shè)計(jì)已成為軟件開(kāi)發(fā)的一個(gè)主流。用C語(yǔ)言來(lái)編寫(xiě)目標(biāo)系統(tǒng)軟件,會(huì)大大縮短開(kāi)發(fā)周期,且明顯地增加軟件的可讀性,便于改進(jìn)和擴(kuò)充,從而研制出規(guī)模更大、性能更完備的系統(tǒng)。

綜上所述,用C語(yǔ)言進(jìn)行單片機(jī)程序設(shè)計(jì)是單片機(jī)開(kāi)發(fā)與應(yīng)用的必然趨勢(shì)。所以作為一個(gè)技術(shù)全面并涉足較大規(guī)模的軟件系統(tǒng)開(kāi)發(fā)的單片機(jī)開(kāi)發(fā)人員最好能夠掌握基本的C語(yǔ)言編程。

04、當(dāng)開(kāi)發(fā)一個(gè)較復(fù)雜而又開(kāi)發(fā)時(shí)間短的項(xiàng)目時(shí),用C還是用匯編開(kāi)發(fā)好?

對(duì)于復(fù)雜而開(kāi)發(fā)時(shí)間緊的項(xiàng)目時(shí),可以采用C語(yǔ)言,但前提是要求對(duì)該MCU系統(tǒng)的C語(yǔ)言和C編譯器非常熟悉,特別要注意該C編譯系統(tǒng)所能支持的數(shù)據(jù)類(lèi)型和算法。雖然C語(yǔ)言是最普遍的一種高級(jí)語(yǔ)言,但不同的MCU廠家其C語(yǔ)言編譯系統(tǒng)是有所差別的,特別是在一些特殊功能模塊的操作上。如果對(duì)這些特性不了解,那調(diào)試起來(lái)就有的煩了,到頭來(lái)可能還不如用匯編來(lái)的快。



05、8088和196芯片單片機(jī)教材,請(qǐng)問(wèn)哪里可以找到?

有關(guān)這方面的教材,大學(xué)里常用的一本是《IBM-PC匯編語(yǔ)言程序設(shè)計(jì)》清華大學(xué)出版社出版的,在網(wǎng)上以及書(shū)店都是可以找到的。另外網(wǎng)上還可以搜索到很多其他的教材如:《微機(jī)原理及匯編語(yǔ)言教程》(楊延雙 張曉冬 等編著 )和《16/32 位微機(jī)原理、匯編語(yǔ)言及接口技術(shù)》(作者:鐘曉捷 陳濤 ,機(jī)械工業(yè)出版社 出版)等,可以在較大型的科技書(shū)店里查找或者直接從網(wǎng)上訂購(gòu)。

06、初學(xué)者到底是應(yīng)該先學(xué)C還是匯編?

對(duì)于單片機(jī)的初學(xué)者來(lái)說(shuō),應(yīng)該從匯編學(xué)起。因?yàn)閰R編語(yǔ)言是最接近機(jī)器碼的一種語(yǔ)言,可以加深初學(xué)者對(duì)單片機(jī)各個(gè)功能模塊的了解,從而打好扎實(shí)的基礎(chǔ)。

07、大三生,學(xué)了電子線路、數(shù)字邏輯、匯編和接口、C語(yǔ)言,但總是感覺(jué)很迷茫,覺(jué)好像什么都不會(huì),怎么辦?

大學(xué)過(guò)程是一個(gè)理論過(guò)程,實(shí)踐的機(jī)會(huì)比較少,往往會(huì)造成理論與實(shí)踐相脫節(jié),這是國(guó)內(nèi)大學(xué)教育系統(tǒng)的通病,不過(guò)對(duì)于學(xué)生來(lái)說(shuō)切不可好高騖遠(yuǎn)。一般從大三會(huì)開(kāi)始接觸到一些專(zhuān)業(yè)課程,電子相關(guān)專(zhuān)業(yè)會(huì)開(kāi)設(shè)相關(guān)的單片機(jī)應(yīng)用課程并且會(huì)有簡(jiǎn)單的實(shí)驗(yàn)項(xiàng)目,那么要充分把握實(shí)驗(yàn)課的機(jī)會(huì),多多地實(shí)際上機(jī)操作練習(xí)。平時(shí)可以多看看相關(guān)的電子技術(shù)雜志網(wǎng)站,看看別人的開(kāi)發(fā)經(jīng)驗(yàn),硬件設(shè)計(jì)方案以及他人的軟件設(shè)計(jì)經(jīng)驗(yàn)。有可能的話,還可以參加一些電子設(shè)計(jì)大賽,借此機(jī)會(huì)2--3個(gè)人合作做一個(gè)完整系統(tǒng),會(huì)更有幫助。到了大四畢業(yè)設(shè)計(jì)階段,也可以選擇相關(guān)的課題作些實(shí)際案例增長(zhǎng)經(jīng)驗(yàn)。做什么事情都有個(gè)經(jīng)驗(yàn)的積累過(guò)程,循序漸進(jìn)。



08、作為學(xué)生,如何學(xué)好單片機(jī)?

學(xué)習(xí)好單片機(jī),最主要的是實(shí)踐,在實(shí)踐中增長(zhǎng)經(jīng)驗(yàn)。在校學(xué)生的話,實(shí)踐機(jī)會(huì)的確會(huì)比較少,但是有機(jī)會(huì)的話,可以畢業(yè)實(shí)習(xí)選擇相關(guān)的課題,這樣就可以接觸到實(shí)際的項(xiàng)目。而且如果單片機(jī)微機(jī)原理是一門(mén)主課的話,相信學(xué)校會(huì)安排比較多的實(shí)踐上機(jī)機(jī)會(huì)。有能力的話,可以找一些相關(guān)兼職工作做做,會(huì)更有幫助。而且單片機(jī)開(kāi)發(fā)應(yīng)用需要軟硬件結(jié)合,所以不能只滿足于編程技巧如何完美,平時(shí)也要注意硬件知識(shí)的積累,多上上電子論壇網(wǎng)站,買(mǎi)一些相關(guān)雜志。可能的話,可以到電子市場(chǎng)去買(mǎi)一些小零件,自己搭一個(gè)小系統(tǒng)讓它工作起來(lái)。


09、如何才能才為單片機(jī)的高手?

要成為單片機(jī)高手,應(yīng)該多實(shí)踐,時(shí)常關(guān)注單片機(jī)的發(fā)展趨勢(shì);經(jīng)常上一些相關(guān)網(wǎng)站,從那里可以找到許多有用的資料。

10、8位機(jī)還能延續(xù)多久?

以現(xiàn)在MCU產(chǎn)品主力還是在8位領(lǐng)域,主要應(yīng)用于汽車(chē)應(yīng)用、消費(fèi)性電子、電腦及PC周邊、電信與通訊、辦公室自動(dòng)化、工業(yè)控制等六大市場(chǎng),其中車(chē)用市場(chǎng)多在歐、美地區(qū),而亞太地區(qū)則以消費(fèi)性電子為主, 并以量大低單價(jià)為產(chǎn)品主流,目前16位MCU與8位產(chǎn)品,還有相當(dāng)幅度的價(jià)差,新的應(yīng)用領(lǐng)域也仍在開(kāi)發(fā),至少在目前8位的MCU還有一席之地。

-END-




推薦閱讀



【01】電路圖:?jiǎn)纹瑱C(jī)之一鍵控制開(kāi)關(guān)機(jī)
【02】單片機(jī)的三總線結(jié)構(gòu)(數(shù)據(jù)、地址、控制)
【03】C語(yǔ)言開(kāi)發(fā)單片機(jī)為啥都是全局變量形式?
【04】單片機(jī)DSP必備概念:快速教會(huì)你傅立葉算法
【05】單片機(jī)程序該如何優(yōu)化?一文為你指明道路!


免責(zé)聲明:整理文章為傳播相關(guān)技術(shù),版權(quán)歸原作者所有,如有侵權(quán),請(qǐng)聯(lián)系刪除

免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!

嵌入式ARM

掃描二維碼,關(guān)注更多精彩內(nèi)容

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉