單片機(jī)編程語(yǔ)言簡(jiǎn)介
指令個(gè)程序:
欲使單片機(jī)工作,必須給它“下命令”,這里的“命令”稱作指令,單片機(jī)執(zhí)行不同的指令就可以完成不同的操作。對(duì)于一些簡(jiǎn)單的任務(wù),單片機(jī)執(zhí)行一兩條指令就可以完成,但是一些復(fù)雜的任務(wù)就需要執(zhí)行很多條指令才可以完成。我們把單片機(jī)執(zhí)行特定控制任務(wù)的指令的總和叫做程序。我們編寫這些指令總和的過(guò)程叫做程序設(shè)計(jì)。
我們要單片機(jī)執(zhí)行我需要的什么任務(wù)時(shí),我們就對(duì)其寫出任務(wù)指令,然后傳達(dá)(編入)給單片機(jī),讓它執(zhí)行我們的指令。要設(shè)計(jì)單片機(jī)程序,除了要了解單片機(jī)指令的含義和用法外,還要掌握指令組合成程序的規(guī)則。就跟我們學(xué)習(xí)英語(yǔ)一樣,我們要學(xué)習(xí)英語(yǔ)的語(yǔ)法和用法規(guī)則,才能說(shuō)好用好流利的英語(yǔ)。
編程語(yǔ)言:
單片機(jī)常用的編程語(yǔ)言有:機(jī)器語(yǔ)言 匯編語(yǔ)言和高級(jí)語(yǔ)言(主要是c語(yǔ)言)
1.機(jī)器語(yǔ)言
單片機(jī)是一種大規(guī)模的數(shù)字集成電路,它只能識(shí)別 0 和 1 這樣的二進(jìn)制代碼。以前在單片機(jī)開(kāi)發(fā)過(guò)程中,人們用二進(jìn)制代碼編寫程序,然后再把所編寫的二進(jìn)制代碼程序?qū)懭雴纹瑱C(jī),單片機(jī)執(zhí)行這些代碼程序就可以完成相應(yīng)的程序任務(wù)。
用二進(jìn)制代碼編寫的程序稱為機(jī)器語(yǔ)言程序。在用機(jī)器語(yǔ)言編程時(shí),不同的指令用不同的二進(jìn)制代碼代表,這種二進(jìn)制代碼構(gòu)成的指令就是機(jī)器指令。在用機(jī)器語(yǔ)言編寫程序的時(shí)候,由于需要記住大量的二進(jìn)制代碼指令及這些代碼代表的功能,很不方便且容易出錯(cuò),現(xiàn)在基本上很少有人用機(jī)器語(yǔ)言對(duì)單片機(jī)進(jìn)行編程了。
2.匯編語(yǔ)言
由于及其語(yǔ)言編程很不方便,人們便用一些有意義并且容易記憶的符號(hào)來(lái)表示不同的二進(jìn)制代碼指令,這些符號(hào)稱為助記符。用助記符表示的指令稱為匯編語(yǔ)言指令,用助記符編寫出來(lái)的程序稱為匯編語(yǔ)言程序。
01110100 00000010 (機(jī)器語(yǔ)言)
MOV A, #02H (匯編語(yǔ)言)
這兩行程序的功能是一樣的,都是將二進(jìn)制數(shù)據(jù)00000010送到累加器A中??梢钥闯?,機(jī)器語(yǔ)言程序要比匯編語(yǔ)言難寫,并且很容易出錯(cuò)。
單片機(jī)只能識(shí)別機(jī)器語(yǔ)言,所以匯編語(yǔ)程序言要匯編(翻譯)成機(jī)器語(yǔ)言程序,再寫入單片機(jī)中。一般都是用軟件匯編自動(dòng)將匯編語(yǔ)言翻譯成及其指令。 大家可看看這個(gè)典型的匯編語(yǔ)言單片機(jī)教材http://www.51hei.com/mcuteach/252.html
3.高級(jí)語(yǔ)言
高級(jí)語(yǔ)言是依據(jù)數(shù)學(xué)語(yǔ)言設(shè)計(jì)的,在用高級(jí)語(yǔ)言編程時(shí)不用過(guò)多的考慮單片機(jī)的內(nèi)部結(jié)構(gòu)。與匯編語(yǔ)言相比,高級(jí)語(yǔ)言易學(xué)易懂,而且通用性很強(qiáng)。高級(jí)語(yǔ)言的種類很多,如:B語(yǔ)言 Pascal語(yǔ)言 C語(yǔ)言和JAVA語(yǔ)言等。單片機(jī)常用C語(yǔ)言作為高級(jí)編程語(yǔ)言。這里是一個(gè)典型的單片機(jī)c語(yǔ)言教程http://www.51hei.com/mcuteach/150.html ,大家可以看看
單片機(jī)不能識(shí)別高級(jí)語(yǔ)言的程序,因此也需要用編譯器對(duì)高級(jí)語(yǔ)言程序翻譯成機(jī)器語(yǔ)言程序后再寫入單片機(jī)。
在上面三種編程語(yǔ)言中,高級(jí)語(yǔ)言編程較為方便,但實(shí)現(xiàn)相同的功能,匯編語(yǔ)言代碼少,運(yùn)行效率高,另外對(duì)于初學(xué)單片機(jī)的朋友,學(xué)習(xí)匯編語(yǔ)言編程有利于更好的理解單片機(jī)的結(jié)構(gòu)與原理,也能為以后學(xué)習(xí)高級(jí)語(yǔ)言編程打下扎實(shí)的基礎(chǔ)。
評(píng)論