在上一篇文章中,我們探索了微控制器中的軟件與硬件,并分析了為何微控制器的軟件和硬件相輔相成缺一不可。我們知道,微控制器的硬件在出廠時(shí)是基本已經(jīng)確定的,所以操控微控制器并滿足不同應(yīng)用的需求主要是依靠各種軟件編程來(lái)實(shí)現(xiàn)的。今天芝子就來(lái)為大家介紹各式各樣的編程語(yǔ)言。
數(shù)字化時(shí)代的一個(gè)重要標(biāo)志就是編程語(yǔ)言的出現(xiàn),編程語(yǔ)言通過(guò)轉(zhuǎn)化為二進(jìn)制的代碼來(lái)控制整個(gè)電路的運(yùn)算和狀態(tài)呈現(xiàn),并最終實(shí)現(xiàn)了數(shù)字世界的各種創(chuàng)新應(yīng)用體驗(yàn)。一般來(lái)說(shuō),最基礎(chǔ)的程序是由二進(jìn)制數(shù)組成的,叫做“機(jī)器語(yǔ)言”,但它是一種人類(lèi)難以處理的語(yǔ)言。為了更好地理解和使用程序,人類(lèi)設(shè)計(jì)并使用了一種易于理解的編程語(yǔ)言,基本的編程語(yǔ)言有匯編語(yǔ)言和C語(yǔ)言。目前,微控制器中使用的編程語(yǔ)言主要是C語(yǔ)言。
微控制器通過(guò)電信號(hào)進(jìn)行操作,只能識(shí)別并輸出二進(jìn)制代碼。而機(jī)器語(yǔ)言將信號(hào)“高和低(即二進(jìn)制數(shù)1和0)”組合在一起,從而讓微控制器“聽(tīng)懂”。但是由于開(kāi)發(fā)者無(wú)法直接理解這種語(yǔ)言,因此要使用C語(yǔ)言或匯編語(yǔ)言來(lái)編寫(xiě)程序,再將基于C語(yǔ)言或匯編語(yǔ)言編寫(xiě)的程序轉(zhuǎn)換為機(jī)器語(yǔ)言,才能達(dá)到操作微控制器的目的。目前每個(gè)微控制器廠商都有一個(gè)將C語(yǔ)言轉(zhuǎn)換為機(jī)器語(yǔ)言的編譯器和一個(gè)將匯編語(yǔ)言轉(zhuǎn)換為機(jī)器語(yǔ)言的匯編器,這些也是微控制器軟硬件中不可缺少的部分。
匯編語(yǔ)言是最貼近機(jī)器語(yǔ)言的一種,它引入了與機(jī)器語(yǔ)言一一對(duì)應(yīng)的符號(hào)字。指令的操作可以用字母和數(shù)字與符號(hào)進(jìn)行關(guān)聯(lián),稱為助記符。如下圖的程序?yàn)槔诘谝恍小癓D A,0x55”中,表示0x55數(shù)據(jù)被LD(加載)到A寄存器,即轉(zhuǎn)移。微控制器不同,匯編語(yǔ)言的語(yǔ)法和符號(hào)也不同。因此,在使用不同的微控制器時(shí),必須學(xué)習(xí)新微控制器的匯編語(yǔ)言。
相比于匯編語(yǔ)言,C語(yǔ)言是一種與人類(lèi)語(yǔ)言密切相關(guān)的編程語(yǔ)言,其程序的指令與英語(yǔ)單詞非常接近。而且,即使微控制器的類(lèi)型不同,C語(yǔ)言的語(yǔ)法也基本相同。因此,在為不同的微控制器編寫(xiě)程序時(shí),不需要學(xué)習(xí)新的編程語(yǔ)言。關(guān)于C語(yǔ)言,ISO和ANSI共同制定了標(biāo)準(zhǔn),這就讓C語(yǔ)言開(kāi)發(fā)的程序可以只需要盡可能少的修改就移植到不同的微控制器平臺(tái)上,從而成為最通用的微控制器編程語(yǔ)言。
總之,若想微控制器實(shí)現(xiàn)完美的功能匹配,還需開(kāi)發(fā)者們的“軟硬兼施”。在接下來(lái)的系列文章中,芝子還將為大家輸出更多有關(guān)“微控制器”的相關(guān)知識(shí),大家不要錯(cuò)過(guò)哦~
相關(guān)閱讀:
【微控制器基礎(chǔ)】——完美的軟硬結(jié)合(上)
來(lái)源:東芝半導(dǎo)體
免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問(wèn)題,請(qǐng)聯(lián)系小編進(jìn)行處理
審核編輯 黃宇
-
微控制器
+關(guān)注
關(guān)注
48文章
7454瀏覽量
150853 -
C語(yǔ)言
+關(guān)注
關(guān)注
180文章
7594瀏覽量
135858
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論