試驗一P1口試驗一_第1頁
試驗一P1口試驗一_第2頁
試驗一P1口試驗一_第3頁
試驗一P1口試驗一_第4頁
試驗一P1口試驗一_第5頁
已閱讀5頁,還剩5頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、四川機電職業技術學院電子電氣工程系篇章 計 劃第四章80C51 的程序設計共 5 次課)教學目標及基本要求:1、掌握 80C51 匯編語言程序編制步驟;2、掌握 80C51 常用偽指令的使用方法;3、熟悉幾種基本的程序結構。各節單元教學內容及學時分配:4.14.2 程序編制的方法和技巧源程序的編制4.3 基本程序結構測驗(一)2 學時4 學時2 學時教學內容的重點、難點及處 理 方 法 :重點:1、源程序形成目標程序的步驟;2、偽指令與單片機指令的本質區別;3、分支、循環和子程序的設計要點。處 理 方 法 : 課 堂 講 授難點:分支程序、循環程序、查表程序、散轉程序設計。處 理 方 法 :

2、課 堂 講 授教學內容的深化和拓展:教學方式手段及教學過程中應注意的問題:教學方式:講授與多媒體相結合教學過程中應注意的問題:結合實際進行講解主要參考書目及網絡資源:123中國機械教育協會 組編朱宇光 主編劉守義 主編4張志良 主編實踐教學安排:實驗一 P1 口實驗(一)2 學時第 16 次課一、教學簡要說明:1、本單元教學重點、難點及處理方法:重點:80C51 匯編語言語句結構的基本格式及偽指令的功能和應用。處理方法:舉例講解。難點:偽指令的功能和應用。處理方法:舉例講解。2、本單元教學方式(手段)或教學內容要點與時間分配:4.14.2程序編制的方法和技巧源程序的編制45 分45 分四川機電

3、職業技術學院電子電氣工程系3、本單元師生活動設計:二、授課內容:1、復習:位操作類指令特點、格式及其用途。2、本單元教學內容(具體到知識點)1) 掌 握 80C51匯編語言語句結構的基本格式;2) 掌 握 程序設計的步驟和基本方法;3) 掌 握 偽指令的功能和應用。3、本單元的講課提綱、板書設計(或多媒體教學)4.1 程序編制的方法與技巧一、程序編制的步驟:(一)預完成任務的分析:1.深入分析明確任務、功能要求及技術指標2.分析硬件資源及工作環境(二)進行算法的優化:利用數學方法或數學模型將實際問題轉化為由計算機進行處理的問題程序總體設計及流程圖繪制:1.程序總體構思 ; 2.確定程序結構、數

4、據形式、資源分配及參數計算;3.勾畫流程圖。二、編制程序的方法和技巧:(二)采用循環結構和子程序:可減少程序容量,提高程序效率。三、匯編語言匯編格式:標號:操作碼 目的操作數,源操作數;注釋4.2 源程序的編制一、源程序的編輯和匯編:(一)源程序的編輯:依據匯編語言基本規則進行,最后以“.ASM”擴展名存盤。(二)匯編:將匯編語言源程序轉換為計算機所能識別的機器語言代碼程序的過程稱為匯編。匯編可分為: 手工匯編; 計算機匯編二、偽指令:在匯編時起控制作用,自身并不產生機器碼,而僅是為匯編服務的一些指令,稱為偽指令。偽指令不屬于 80C51指令系統。常用的偽指令有以下幾種: 起始偽指令 ORG(

5、Origin)格式:ORG 16位地址功能:規定 ORG下面目標程序的起始地址。 結束偽指令 END格式:END功能:匯編語言源程序的結束標志。在 END后面的指令,匯編程序不再處理。 等值偽指令 EQU(Equate)格式:字符名稱EQU數據或匯編符號功能:將一個數據或特定的匯編符號賦予規定的字符名稱。 數據地址賦值偽指令 DATA四川機電職業技術學院電子電氣工程系格式:字符名稱DATA表達式功能:將數據地址或代碼地址賦予規定的字符名稱。 定義字節偽指令 DB(Define Byte)格式:DB 8位二進制數表功能:從指定的地址單元開始,定義若干個 8位內存單元的數據。數據與數據之間用“,”

6、分割。 定義字偽指令 DW(Define Word)格式:DW 16位二進制數表功能:從指定的地址單元開始,定義若干個 16位數據。 定義位地址偽指令 BIT格式:字符名稱BIT位地址功能:將位地址賦予所規定的字符名稱。4、本單元的作業布置:5、小結:1)80C51匯編語言語句結構的基本格式;2) 程序設計的步驟和基本方法;3) 偽指令的功能、特點和應用。第 17 、18 次課一、教學簡要說明:1、本單元教學重點、難點及處理方法:重點:順序程序、分支程序、循環程序設計和子程序及其調用。處理方法:舉例講解。難點:分支程序、循環程序設計。處理方法:舉例講解。2、本單元教學方式(手段)或教學內容要點

7、與時間分配:1)復習2)講授20 分140 分10 分3)小結4)自行消化10 分3、本單元師生活動設計:提問。二、授課內容:1、復習:1)80C51匯編語言語句結構的基本格式;2) 程序設計的步驟和基本方法;3) 偽指令的功能、特點和應用。2、本單元教學內容(具體到知識點)掌 握 順序程序、分支程序、循環程序設計和子程序及其調用。3、本單元的講課提綱、板書設計(或多媒體教學)4.3 基本程序結構一. 順序程序順序程序是指按順序依次執行的程序,也稱為簡單程序或直線程序。順序程序結構雖然比較簡單,但也能完成一定的功能任務,是構成復雜程序的基礎。【例】 已知 16位二進制負數存放在 R1R0中,試

8、求其補碼,并將結果存在 R3R2中。解:二進制負數的求補方法可歸結為“求反加 1”,符號位不變。利用 CPL指令實現求反;加 1時,則應低 8位先加 1,高 8位再加上低位的進位。注意這里不能用 INC指令,因為 INC指令不影響標志位。程序如下:四川機電職業技術學院電子電氣工程系教案用紙CONT:MOVA,R0 ;讀低 8位;取反CPL AADD A,#1MOV R2,AMOV A,R1CPL A;加 1;存低 8位;讀高 8位;取反ADDC A,#80H ;加進位及符號位MOVRETR3,A ;存高 8位;二.分支程序根據不同條件轉向不同的處理程序,這種結構的程序稱為分支程序。80C51指

9、令系統中的條件轉移指令、比較轉移指令和位轉移指令,可以實現分支程序。【例】已知電路如圖 4-5所示,要求實現: S0單獨按下,紅燈亮,其余燈滅; S1單獨按下,綠燈亮,其余燈滅; 其余情況,黃燈亮。解:程序如下SGNL:ANL P1,#11100011B;紅綠黃燈滅ORL P1,#00000011B;置 P1.0、P1.1輸入態, P1.5P1.7狀態不變SL0: JNB P1.0,SL1JNB P1.1,REDYELW:SETB P1.4CLR P1.2;P1.0=0,S0未按下,轉判 S1;P1.0=1,S0按下;且 P1.1=0,S1未按下,轉紅燈亮;黃燈亮;紅燈滅CLR P1.3SJM

10、P SL0;綠燈滅;轉循環SL1: JNB P1.1,YELWGREN:SETB P1.3CLR P1.2;P1.0=0,S0未按下;P1.1=0,S1未按下,轉黃燈亮;綠燈亮;紅燈滅;黃燈滅CLR P1.4四川機電職業技術學院電子電氣工程系教案用紙SJMP SL0RED: SETB P1.2CLR P1.3;轉循環;紅燈亮;綠燈滅;黃燈滅;轉循環CLR P1.4SJMP SL0三. 循環程序循環程序一般包括以下幾個部分: 循環初值; 循環體; 循環修改; 循環控制;以上四部分可以有兩種組織形式,其結構如圖 4-6所示。左圖為“先執行后判斷”的結構,右為“先判斷后執行”的結構。【例】P79四.

11、 子程序及其調用:1、子程序的定義在實際編程中,常常回遇到功能完全相同的程序段,或不在同一程序模塊,或雖在同一模塊而需重復執行,但又不是連續重復執行。為了避免重復編制同一段程序,節省存儲空間,把程序段獨立開來,附加少量額外語句,將其編制成公用子程序,供程序其他地方需要時調用。這種程序的設計方法稱之為子程序設計。2、子程序的調用:子程序的結構與一般的程序并無多大區別,它的主要特點是,在執過程中需要由其他程序來調用,執行完后又需要把執行流程返回到該子程序的主程序。子程序調用時應注意兩點:一是現場保護和恢復;二是主程序與子程序的參數傳遞。3、現場保護和恢復:第一:在主程序中進行;第二:在子程序中進行

12、;4、參數傳遞:傳遞參數的方法主要有:第一:利用累加器或寄存器;第二:利用存儲器;第三:利用堆棧。5、編制子程序的基本要求:1)子程序要有一定的通用性;2)選用適當的方法在主程序和子程序之間進行參量傳遞,3)注意信息的保存,保存方法有:4、本單元的作業布置:P 6、789四川機電職業技術學院電子電氣工程系5、小結:1)順序程序、分支程序、循環程序的特點及其設計;2)子程序及其調用。第 19 次課一、教學簡要說明:1、本單元教學重點、難點及處理方法:處理方法:先總結,再進行測驗。難點:測驗。處理方法:獨立完成。2、本單元教學方式(手段)或教學內容要點與時間分配:測驗(一)90 分3、本單元師生活

13、動設計:二、授課內容:1、復習:2、本單元教學內容(具體到知識點)123、本單元的講課提綱、板書設計(或多媒體教學)測驗(一)一、單選題(3分/題)1.十進制數 126對應的十六進制表示為(A. 8FH B. 8EH C. FEH D. 7EH)四川機電職業技術學院電子電氣工程系教案用紙2.二進制數 110010010對應的十六進制數表示為()A. 192H3.3的補碼為(A. 10000011 B. 111111004.Intel80C51單片機 CPU是(A. 16 B. 4 C. 85.在單片機中,通常將一些中間計算結果存放在(A. 累加器 B. 控制器 C. 程序存儲器6.80C31復

14、位后,PC與 SP的值分別為(B. 1B6HC.DB0HD. 666H)C. 11111110D. 11111101)位的單片機D. 準 16)D. 數據存儲器)A. 0000H,00H7.80C31單片機片內 RAM共有(A. 128 B. 256 C. 4K8.當進行外部擴展時,80C51單片機的 P0口用作(B. 0000H,07HC. 0003H,07H D. 0800H,00H)字節D. 64K)A. 傳輸高 8位地址C. 傳輸低 8位數據9.下列指令中錯誤的是(B. 傳輸低 8位地址D. 傳輸低 8位地址/數據總線)A. MOV A,R4B. MOV 20H,R4C. MOV R4

15、,P010.若(A)45H,(C)1,執行指令 RLC A后,(A)的值為(D. MOV R0,R3)A. 8AH二、程序分析:B. 0D1HC. 8BHD. 0A2H1.讀程序(一)(4分/空)MOV R0,#30HMOV R1,#40H若(30H)8DH,(40H)4AH,(41H)66H,(CY)1MOV A,R0執行以上程序后:ADDC A,R1(A)=(40H)=(R1)=, (30H)=, (41H)=。MOV R1,AINC R1SUBB A,R1MOV 30H,A2.讀程序(二)(10分)MOV DPTR,#2000HCLR AMOVC A,A+DPTRMOV DPTR,#10

16、00HMOVX DPTR,A上述程序段實現的功能是()A.將累加器 A中的內容送至數據指針存儲器 DPTR中B.將 ROM2000H單元的內容送至外部 RAM1000H單元C.將累加器 A中的內容送至 1000H地址單元中D.將 RAM2000H單元的內容送至外部 ROM1000H單元3.讀程序(三)(5分/空)(1)若(SP)=40H,(3FH)=30H,(40H)=60H,執行POP DPHPOP DPL指令后,DPTR的內容為 ,SP的內容為(2)若(SP)=22H,(PC)=2233H,執行 LCALL 2B3CH指令后,。(SP)=,(PC)=,(23H)=,(24H)=。四川機電職業技術學院電子電氣工程系三、改錯(2分/題)判斷下列指令是否有錯,若有錯,則改正之。1.MUL R0R12.MOV A,R73.MOV A,#3000H5.LJMP #1000H4.MOVC A+DPTR,A第 20 次課一、教學簡要說明:1、本單元教學重點、難點及處理方法:重點:匯編語言建立、運行的上機操作方法。處理方法:上機操作。難點: 同上。2、

溫馨提示

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

評論

0/150

提交評論