編程語(yǔ)言基礎(chǔ)_第1頁(yè)
編程語(yǔ)言基礎(chǔ)_第2頁(yè)
編程語(yǔ)言基礎(chǔ)_第3頁(yè)
編程語(yǔ)言基礎(chǔ)_第4頁(yè)
編程語(yǔ)言基礎(chǔ)_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

編程語(yǔ)言基礎(chǔ)一、編程語(yǔ)言語(yǔ)言是一種傳遞信息的媒介。機(jī)器人工作時(shí),我們要給機(jī)器人發(fā)出一些命令,告訴機(jī)器人在接到什么樣的信號(hào)時(shí),應(yīng)當(dāng)做出何種響應(yīng),這些命令就是我們要編寫(xiě)的程序。我們把用來(lái)編寫(xiě)程序的語(yǔ)言稱(chēng)為編程語(yǔ)言。編器程語(yǔ)言可分為低級(jí)語(yǔ)言和高級(jí)語(yǔ)言:低級(jí)語(yǔ)言又分為機(jī)器語(yǔ)言和匯編語(yǔ)言。機(jī)器語(yǔ)言:給機(jī)器發(fā)布命令不是用我們?nèi)伺c人之間使用的語(yǔ)言,機(jī)器只懂一樣?xùn)|西—數(shù)字,而且只能是由“0”和“1”組成的有序序列,如0100110、0111010等字串,由這種有序序列組成的集合就叫做機(jī)器語(yǔ)言。通常我們規(guī)定,用“1”表示高電平,用“0”表示低電平。匯編語(yǔ)言:鑒于機(jī)器語(yǔ)言的缺點(diǎn),人們又發(fā)明了種用比較容易讓人接受的英文縮寫(xiě)來(lái)表示某個(gè)特定的“0”和“1”組成的有序序列,并用這些英文縮寫(xiě)來(lái)編寫(xiě)程序,這種編程語(yǔ)言叫做匯編語(yǔ)言。高級(jí)語(yǔ)言:為了克服低級(jí)語(yǔ)言的缺點(diǎn),人們又發(fā)明了種可讀性較好,又容易理解的高級(jí)語(yǔ)言。相對(duì)于高級(jí)語(yǔ)言,把機(jī)器語(yǔ)讠吾言、匯編語(yǔ)言統(tǒng)稱(chēng)為低級(jí)語(yǔ)言。高級(jí)語(yǔ)言獨(dú)立于計(jì)算機(jī)硬件,它采用接近人們表達(dá)方式、功能完善的語(yǔ)句形式,易于被人們掌握。如高級(jí)語(yǔ)言的加法指令和減法指令與我們數(shù)學(xué)中的“+”和“-”運(yùn)算符相同。這種語(yǔ)言同樣需要被翻譯成機(jī)器語(yǔ)言,才能被機(jī)器接受。機(jī)器語(yǔ)言是一切語(yǔ)言的基礎(chǔ)。高級(jí)語(yǔ)言有很多種,而且在不斷地發(fā)展。本書(shū)介紹的簡(jiǎn)易機(jī)器人的核心元件為ATMEGA48單片機(jī)。接下來(lái)將學(xué)習(xí)如何使用ATMEGA48單片機(jī)匯編語(yǔ)言語(yǔ)句來(lái)實(shí)現(xiàn)簡(jiǎn)易機(jī)器人的基本動(dòng)作。在用匯編語(yǔ)言編寫(xiě)程序前,必須先了解單片機(jī)系統(tǒng)的硬件連接,也就是要知道單片機(jī)I/O端口與外圍電路的管腳接線,以便通過(guò)單片機(jī)程序控制電路的工作。圖3-1給出了簡(jiǎn)易機(jī)器人的單片機(jī)控制系統(tǒng)框圖,圖中PB口與左、右電機(jī)連接,通過(guò)程序控制PB口的狀態(tài)就可以實(shí)現(xiàn)對(duì)左、右電機(jī)的控制,而左、右電機(jī)分別驅(qū)動(dòng)機(jī)器人的左、右輪,從而實(shí)現(xiàn)機(jī)器人的前進(jìn)、后退、轉(zhuǎn)彎和停止等基本動(dòng)作。表3-1給出了簡(jiǎn)易機(jī)器人的單片機(jī)PB口狀態(tài)與機(jī)器人動(dòng)作的關(guān)系。表中8位二進(jìn)制數(shù)分別對(duì)應(yīng)PB口的8位I/O口(PB7-PBO)。由于二進(jìn)制數(shù)表示比較復(fù)雜,我們將其轉(zhuǎn)化成十六進(jìn)制數(shù)表示。1.機(jī)器人前進(jìn)【程序】LDIR17,$33OUTPB,R17【程序分析】指令實(shí)現(xiàn)將數(shù)字“$33”傳送至PB口。其中,“$33”表示十六進(jìn)制數(shù),“$”為十六進(jìn)制符號(hào);“LDI”是將數(shù)據(jù)傳送至寄存器指令,它能將一個(gè)數(shù)據(jù)傳送至R16-R31(暫暫時(shí)存放數(shù)據(jù)的存儲(chǔ)單元)中的任一個(gè)寄存器中,在該程序中選用寄存器R17;“OUT”是將寄存器中的數(shù)據(jù)傳送至I/O口寄存器:“PB”是指PB口的寄存器。第一行通過(guò)數(shù)據(jù)傳送指令“LDI”將數(shù)據(jù)“$33”傳送至通用寄存器“R17”中。第二行通過(guò)數(shù)據(jù)傳送指令“OUT”將數(shù)據(jù)從寄存器中傳送至PB口。指令執(zhí)行后,PB7-PB0分別別為“00110011”,根據(jù)表3-1可知,該程序?qū)崿F(xiàn)機(jī)器人前進(jìn)的功能。2.機(jī)器人后退【程序】LDIR17,$30OUTPB,RI7【程序分析】指令表示將數(shù)字“$30”傳送至PB口。指令執(zhí)行后,PB7-PBO分別為“00110000”。根據(jù)表3-1可知,該程序?qū)崿F(xiàn)機(jī)器人后退的功能?!境绦颉縇DIRI7,$00OUTPB,R17【程序分析】指令表示將數(shù)字“$00”傳送至PB口。指令執(zhí)行后,PB7-PBO分別為“000000”。根據(jù)表3-1可知,該程序?qū)崿F(xiàn)機(jī)器人停止運(yùn)動(dòng)的功能。3.機(jī)器人停止【程序】CX:LDIR17,$33;機(jī)器人前進(jìn)OUTPB,R17SBICPC0,LZ;有障礙物JMPCXLZ:LDIR17,$31;機(jī)器人右轉(zhuǎn)OUTPB,R17JMPCXEND【程序分析】這段指令表示機(jī)器人向前運(yùn)行,當(dāng)安裝在機(jī)器人前面的傳感器檢測(cè)到有障礙物時(shí),機(jī)器人右轉(zhuǎn),從而避開(kāi)障礙物。程序中“CX”、“LZ”稱(chēng)為為標(biāo)號(hào),描述指令的位置。“SBIC”是條件跳轉(zhuǎn)指令,表示當(dāng)PC0為0時(shí)跳轉(zhuǎn);否則執(zhí)行下一條語(yǔ)句。其中,“PC0”指的是PC口的第1位。當(dāng)PC0為0時(shí),表示機(jī)器人上的傳感器有信號(hào),說(shuō)明機(jī)器人前方有障礙,此時(shí)程序跳轉(zhuǎn)至“LZ”所在的語(yǔ)句,執(zhí)行機(jī)器人右轉(zhuǎn)程序。“JMP”是無(wú)條件跳轉(zhuǎn)指令,當(dāng)執(zhí)行了“JMPCX”程序則返回到到“CX”位置繼續(xù)執(zhí)行。4.機(jī)器人避開(kāi)障礙物二、程序流程圖1.什么是程序流程圖程序流程圖是用規(guī)定的圖形、連線和文字表示算法的一組圖形。在程序設(shè)計(jì)階段,用以表示程序運(yùn)行順序的流程圖稱(chēng)為程序流程圖,簡(jiǎn)稱(chēng)流程圖。流程圖是程序設(shè)計(jì)中很有用的工具,它直觀、清晰、易懂、便于檢查、交流和修改,詳細(xì)的流程圖可以作為編寫(xiě)程序的依據(jù)。繪制制流程圖后,根據(jù)流程圖編寫(xiě)程序,可以使問(wèn)題簡(jiǎn)單化,易于理解。2.程序流程圖常用的符號(hào)在繪制流程圖時(shí),通常須采用符合國(guó)家標(biāo)準(zhǔn)的圖形符號(hào)。標(biāo)準(zhǔn)程序流程圖中常用的符號(hào)及名稱(chēng)如下:起止框:一個(gè)程序的開(kāi)始或結(jié)東。處理框:要處理的內(nèi)容。判斷框:框中的內(nèi)容為條件。輸入輸出框:數(shù)據(jù)的輸入或輸出。流程線:程序的流向。3.程序流程圖圖3-2為一程序流程圖實(shí)例,表示示當(dāng)機(jī)器人沿直線向前行走的過(guò)程中遇到障礙物時(shí),機(jī)器人會(huì)發(fā)出警報(bào)聲,并停止前進(jìn)。下面以該流程圖為例,說(shuō)明程序流程圖中常用符號(hào)的畫(huà)法、意義及其在流程圖中的使用規(guī)則。

(1)圖中描述文字為“開(kāi)始”和“結(jié)束”的扁扁橢圓形符號(hào)為起止框,它表示流程圖的起點(diǎn)及終點(diǎn)。每個(gè)流程圖只能有個(gè)“開(kāi)始”和一個(gè)“結(jié)束”。

(2)圖中帶有箭頭的直線稱(chēng)為流程線,表示程序執(zhí)行的路徑;流程線上的箭頭代表方向。

(3)圖中描述文字為“前進(jìn)”和“發(fā)報(bào)警信號(hào)并停車(chē)”的矩形符號(hào)為處理框,它表示各種處理功能的符號(hào):矩形內(nèi)的文字表示進(jìn)行什么處理。

(4)圖中描述文字為“有有障礙物?”

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論