您好!歡迎光臨烜芯微科技品牌官網(wǎng)!

深圳市烜芯微科技有限公司

ShenZhen XuanXinWei Technoligy Co.,Ltd
二極管、三極管、MOS管、橋堆

全國(guó)服務(wù)熱線:18923864027

單片機(jī)的編程語言介紹
  • 發(fā)布時(shí)間:2022-02-22 19:39:57
  • 來源:
  • 閱讀次數(shù):
單片機(jī)的編程語言介紹
作為計(jì)算機(jī)技術(shù)中的一個(gè)分支,單片機(jī)技術(shù)在電子產(chǎn)品領(lǐng)域的應(yīng)用,豐富了電子產(chǎn)品的功能,也為智能化電子設(shè)備的開發(fā)和應(yīng)用提供了新的出路,實(shí)現(xiàn)了智能化電子設(shè)備的創(chuàng)新與發(fā)展。對(duì)于初學(xué)者來說,很多人一開始經(jīng)常會(huì)被單片機(jī)的各種各樣的編程語言搞糊涂。因?yàn)閱纹瑱C(jī)的編程有很多,但最常見的有四種,即匯編語言、C語言、PL/M和BASIC語言。那么究竟要學(xué)習(xí)哪一種編程語言好呢?下面先來了解一下這四種編程語言:
單片機(jī)
編程語言
1.BASIC編程語言
BASIC是一種高級(jí)語言,它的英文含義是“初學(xué)者通用符號(hào)指令代碼”,是在1965年5月,由美國(guó)科學(xué)家托馬斯·庫爾茲研制出來的。10多年后,微軟公司把它移植到微型機(jī)上。幾十年來,BASIC語言一直被認(rèn)為是初學(xué)者編程的語言,它已經(jīng)由QBASIC發(fā)展到VB#版本,具備了很多結(jié)構(gòu)化思想和編程方式,如函數(shù)、模塊、局部變量、全局變量、數(shù)據(jù)傳遞等.早期的BASIC語言由于生成的代碼不是最終目標(biāo)機(jī)器的代碼,而是經(jīng)過一個(gè)RUNTIME程序解釋后運(yùn)行的,所以執(zhí)行效率低,但這種逐行解釋的方法很容易找到程序中的錯(cuò)誤,而不是當(dāng)程序執(zhí)行完才能顯現(xiàn)出來.而單片機(jī)的BASIC編譯器是直接將程序代碼編譯成相應(yīng)芯片的機(jī)器碼,不需要在單片機(jī)的內(nèi)存中駐留RUNTIME程序,執(zhí)行效率與其他編譯器編譯出來的一樣.此外初學(xué)者還需要注意,BASIC為簡(jiǎn)化使用變量,所有變量都用浮點(diǎn)值。
2.PL/M編程語言
PL/M是一種高級(jí)語言,它由美國(guó)INTEL公司設(shè)計(jì),主要用于Intel 公司生產(chǎn)的單片機(jī)和微處理器系統(tǒng)軟件和應(yīng)用軟件的開發(fā)。作為高級(jí)語言,它更接近和體現(xiàn)人的設(shè)計(jì)思想。PL/M語言不僅具有一般高級(jí)語言的特點(diǎn),而且還能象匯編語言那樣直接利用CPU 的硬件特性進(jìn)行程序設(shè)計(jì)。因而,與其它高級(jí)語言相比,功能多,用途更廣泛,尤其在16位單片機(jī)應(yīng)用領(lǐng)域更受到人們的普遍重視。
但對(duì)51系列的單片機(jī)來說,PL/M不支持復(fù)雜的算術(shù)運(yùn)算、浮點(diǎn)變量而且無豐富的庫函數(shù)支持,學(xué)習(xí)PL/M無異于學(xué)習(xí)一種新語言,難度相對(duì)較大,需要花費(fèi)較多的時(shí)間和精力。
3.匯編語言
匯編語言是一種用助記符來表示機(jī)器指令的符號(hào)語言,是最接近于機(jī)器碼的一種語言.其主要優(yōu)點(diǎn)是占用資源少,程序執(zhí)行效率高。由于它一條指令就對(duì)應(yīng)一條機(jī)器碼,每一步的執(zhí)行動(dòng)作都很清楚,并且程序大小和堆棧調(diào)用情況都容易控制,調(diào)試起來也比較方便。但是不同的類型的單片機(jī),其匯編語言可能有點(diǎn)差異,所以不易移植。比如你在PICl2CESl8單片機(jī)上用匯編語言編了一個(gè)程序,到了STC89C51單片機(jī)上那可就運(yùn)行不了,因?yàn)樗鼈兊闹噶钕到y(tǒng)是有區(qū)別的。
單片機(jī)的匯編語言非常像其他匯編語言,指令系統(tǒng)比第一代微處理器要強(qiáng)一些,但單片機(jī)擁有不同存儲(chǔ)區(qū)域使得其編程變得復(fù)雜一些,可是作為一位電子工程師,懂得匯編語言就可幫助你了解影響任何語言效率的特殊規(guī)定。例如,懂得匯編語言指令就可以使用在片內(nèi)RAM作變量的優(yōu)勢(shì),因?yàn)槠庾兞啃枰獛讞l指令才能設(shè)置累加器和數(shù)據(jù)指針進(jìn)行存取。同樣的,當(dāng)要求使用浮點(diǎn)數(shù)和啟用函數(shù)時(shí)也只有具備匯編編程經(jīng)驗(yàn)才能避免生成龐大的、效率低的程序,對(duì)于這方面的編程,沒有匯編語言是做不到的。
4.C語言
單片機(jī)的C語言是一種編譯型程序設(shè)計(jì)語言,它兼顧了多種高級(jí)語言的特點(diǎn),并具備匯編語言的功能。C語言具有功能豐富的庫函數(shù),運(yùn)算速度快,編譯效率高,有良好的可移植性,而且可以實(shí)現(xiàn)直接對(duì)系統(tǒng)硬件的控制.此外,C語言程序具有完整的程序模塊結(jié)構(gòu),從而為軟件開發(fā)中采用模塊化程序設(shè)計(jì)方法提供了有力的保障。
單片機(jī)
C語言
5.哪種編程語言好
單片機(jī)編程的語言既可以用C,也可以用匯編。用匯編的優(yōu)勢(shì)主要是程序可以被編程者優(yōu)化,而不是由編譯器優(yōu)化,這樣就可以絕對(duì)可控,程序的安全性和執(zhí)行速度受編程者水平限制,不過總的執(zhí)行速度較C語言快,代碼占程序存儲(chǔ)器的容量較C語言小。這樣,匯編程序更適合程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器較小的老式單片機(jī)。但是,匯編程序畢竟是機(jī)器語言的匯編助記符,所以存在指令難記,指令功能弱的缺點(diǎn),造成學(xué)習(xí)困難。
C語言的優(yōu)勢(shì)與缺點(diǎn)正好與匯編相反。C語言畢竟是一種高級(jí)語言,具有較好的學(xué)習(xí)性,幾乎不必記憶指令,學(xué)習(xí)容易,而且編譯時(shí)的優(yōu)化由編譯器管理,一般不受編程者水平限制。由于機(jī)器優(yōu)化的局限性,C語言總的執(zhí)行速度較匯編語言慢,代碼占程序存儲(chǔ)器的容量較匯編語言大。這樣,C程序更適合程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器較大的新式單片機(jī)。
建議初學(xué)者先使用C語言快速入門,然后再研究匯編語言,優(yōu)化程序設(shè)計(jì)。
以上就是單片機(jī)的編程語言介紹了。總而言之,學(xué)習(xí)的不同階段,適合用不同的語言。如果是剛剛?cè)腴T學(xué)習(xí)的,由于需要掌握單片機(jī)的基礎(chǔ)知識(shí),適合用匯編語言,這樣有利于加深理解單片機(jī)。在熟練之后,用C語言編程,能夠節(jié)省不少精力和時(shí)間。如果是經(jīng)驗(yàn)豐富的或者高手,哪一種編程語言都適合。
〈烜芯微/XXW〉專業(yè)制造二極管,三極管,MOS管,橋堆等,20年,工廠直銷省20%,上萬家電路電器生產(chǎn)企業(yè)選用,專業(yè)的工程師幫您穩(wěn)定好每一批產(chǎn)品,如果您有遇到什么需要幫助解決的,可以直接聯(lián)系下方的聯(lián)系號(hào)碼或加QQ/微信,由我們的銷售經(jīng)理給您精準(zhǔn)的報(bào)價(jià)以及產(chǎn)品介紹
 
電話:18923864027(同微信)
QQ:709211280

相關(guān)閱讀