微機原理課程設計說明書_第1頁
微機原理課程設計說明書_第2頁
微機原理課程設計說明書_第3頁
微機原理課程設計說明書_第4頁
微機原理課程設計說明書_第5頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、華北水利水電大學課 程 設 計 說 明 書20142015學年第 二 學期 學院:電力學院 專業(yè):自動化 姓名:郭* 學號:2012* 2015年7月3日目錄一、要求.2二、分析.21)BIOS中斷調(diào)用. .22)圖形設計.23)顏色顯示三、軟件設計.21)設計詳細的程序流程.32)根據(jù)流程圖,編寫源程序.3 3)上機調(diào)試源程序.74、 課程設計總結(jié).91)設計的特點.102)設計的不足.103)上機調(diào)試源程序.10屏幕顯示圖形的設計一、要求1)利用80x86匯編語言BIOS中斷調(diào)用的方法,通過*字符設計自己的名字及學號,并在顯示器上用6種以上的顏色顯示出來;2)動態(tài)切換姓名與學號;3)可自行

2、設計顯示姓名及學號的方案。二、分析1)BIOS中斷調(diào)用BIOS常駐ROM,獨立于DOS,可與任何操作系統(tǒng)一起工作。它的主要功能是驅(qū)動系統(tǒng)所配置的外部設備,如磁盤驅(qū)動器、顯示器、打印機及異步通訊接口等。通過INT 10HINT 1AH向用戶提供服務程序的入口,使用戶無需對硬件有深入了解,就可完成對I/O設備的控制與操作。BIOS的中斷調(diào)用與DOS功能調(diào)用類似。 2)圖形設計掌握BIOS中斷調(diào)用INT 10H的13H號功能。注意13H號功能入口參數(shù)的要求。3)顏色顯示在彩色顯示屏幕上每個字符在存儲中用兩個字節(jié)表示。一個字節(jié)保存字符的ASCII碼,另一個字節(jié)保存字符的屬性。BIOS中斷調(diào)用INT 1

3、0H的13H號功能是顯示字符串,字符的屬性在BL中。三、軟件設計1)設計詳細的程序流程圖程序設有一個主頁面,通過主頁面可以調(diào)用兩個子程序,通過子程序來顯示所要顯示的程序,故所化程序流程圖如下:開始定義初始化顯示菜單Y?顯示名字子程序N Y顯示學號子程序ANY KEY?N Y自動顯示名字學號T? N YESC? Y結(jié)束 2)根據(jù)流程圖,編寫源程序ROW=4 ;常量定義,顯示信息的行號COLUM=00;顯示信息的列號ESCKEY=1BH ;ESC鍵的ASCII碼值DSEG SEGMENT MENU DB 0DH,0AH,-COMTENT-,0DH,0AH ;顯示信息,菜單 0DH,和0AH是回車換

4、行的意思 DB 0DH,0AH,1.SHOW THENAME,PRESS SHIFT+Y. DB 0DH,0AH,2.SHOW THENUMBER,PRESS ANY KEY. DB 0DH,0AH,3.SHOW THEZI DONG QIE HUAN,PRESSSHIFT+T. DB 0DH,0AH,4.TO EXIT,PRESS THE ESC+PRESS ANY KEY.N = $-MENU MESS1 DB OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO;定義名字字符 DB

5、 O! ( Hua Bei Shui Li Shui Dian Da Xue ) !O DB O! * * !O DB O! * * * * * * * * * * * * * * * * * * !O DB O!* * * * * * * * * * * * * * * * * * !O DB O! * * * * * * * * * * !O DB O! * * * * * * * * * * * * * * * !O DB O! * * * * * * * * * * * !O DB O! * * * * * * * * * * * * * * * * * * * * !O DB O!

6、* * * * * * * * * * * *!O DB O! * * * * * * * * * * * * * * * * !O DB O! * * * * * * * !O DB O! * * * * * * * * * * * * * * !O DB O! * * * * * !O DB O! * * * * * !O DB O! * * * * !O DB O! * * * * * * !O DB O! * * * * * !O DB OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO*OOOOOOOOOO

7、OOOOOMESS_LEN1 = $-OFFSET MESS1 ;取名字字符的長度 MESS2 DB OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO;定義學號字符 DB O!ooooooooo ooooooooo HH ooooooooo HH HH ooooooooo ooooooooo ooooooooo!O DB O! HH HH HH HH HH HH HH HH HH HH!O DB O! HH HH HH HH HH HH HH HH HH HH!O DB O!oooo

8、oooHH HH HH HH oooooooHH HH HH oooooooHH oooooooHH oooooooHH!O DB O!HH HH HH HH HH HH HH HH HH HH!O DB O!HH HH HH HH HH HH HH HH HH HH!O DB O!HHooooooo HHoooooHH HH HHooooooo HH HH HHooooooo HHooooooo oooooooHH!O DB OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOMESS

9、_LEN2 = $-OFFSET MESS2 ;取學號字符的長度 COLORB DB 40H,20H,10H,50H,84H,8EH,82H,81H,85H,04H,0EH,02H,01H,05H,0F4H,0FEH,0F2H,0F1H,0F5H,41H,21H,51H,94H,9EH,92H,95H;顏色屬性 COLORE LABEL BYTEDSEG ENDSCSEG SEGMENT ASSUME CS:CSEG,DS:DSEG,ES:DSEG START: MOV DI,OFFSET COLORB-1 ;預置顏色指向 MOV AX,DSEG MOV DS,AX ;設置數(shù)據(jù)段初值 MOV

10、ES,AX ;ES指向數(shù)據(jù)段 LEA BP,MENU ;顯示提示菜單(把MENU的偏移地址送到BP,BP為int10下要顯示字符串的地址) MOV AH,13H ;顯示字符串 MOV AL,01;光標跟隨移動 MOV CX,N ;字符串長度 MOV BL,0BH ;菜單顏色 MOV BH,0 ;顯示頁碼 MOV DX,0 ;起始行列 INT 10H;顯示器功能調(diào)NEXTC: INC DI ;調(diào)整顏色指針,改變顏色 CMP DI,OFFSET COLORE;是否超過指定的顏色 JNZ NEXTE;沒有超過則跳轉(zhuǎn) MOV DI,OFFSET COLORB;超過則重新指定為第一種顏色NEXTE: M

11、OV BL,DI ;去顏色 MOV AH,0 ;讀取鍵盤子程序 INT 16H ;從鍵盤讀字符 CMP AL,Y ;是否為Y JZ C1 ;調(diào)用子程序1 CMP AL,T ;是否為T JZ C3;調(diào)用子程序3 CMP AL,1BH;退出 JZ OVER1 JMP C2 ;調(diào)用子程序2 C1: CALL ECH1 JMP NEXTCOVER1: MOV AX,4C00H INT 21H C2: CALL ECH2 JMP NEXTC MOV AX,4C00H INT 21H C3: CALL ECH1 CALL DELAY1 CALL ECH2 JMP NEXTC MOV AX,4C00H IN

12、T 21H ECH1 PROC NEAR;子程序1,顯示MESS1 MOV SI,OFFSET MESS1 MOV CX,MESS_LEN1 MOV DH,ROW MOV DL,COLUM CALL CLS CALL ECHOA CALL DELAY RET ECH1 ENDP ECH2 PROC NEAR;子程序2,顯示MESS2 MOV SI,OFFSET MESS2 MOV CX,MESS_LEN2 MOV DH,ROW MOV DL,COLUM CALL CLS CALL ECHOA RET ECH2 ENDP ECHOA PROC NEAR JCXZ ECHO2 MOV BH,0 M

13、OV AH,2 INT 10H MOV AL,20H;空格的ASCII碼 MOV AH,9 INT 10H;用指定屬性寫一空格 MOV AH,0EHECHO1: MOV AL,SI INC SI INT 10H ;逐個顯示字符 CALL DELAY LOOP ECHO1 ;循環(huán)ECHO2: RETECHOA ENDPCLS PROC NEAR ;清屏子程序 PUSH AX PUSH BX PUSH CX PUSH DX MOV CH,0 MOV CL,0 MOV DH,25 MOV DL,80 MOV BH,07 MOV AL,0 MOV AH,6 INT 10H POP DX POP CX

14、POP BX POP AX RETCLS ENDPDELAY PROC NEAR ;延時 PUSH CX PUSH DX MOV DX,10WAIT1: MOV CX,2108WAIT2: LOOP WAIT2 DEC DX JNZ WAIT1 POP DX POP CX RETDELAY ENDPDELAY1 PROC NEAR;延時 PUSH CX PUSH DX MOV DX,100WAIT3: MOV CX,2108WAIT4: LOOP WAIT4 DEC DX JNZ WAIT3 POP DX POP CX RETDELAY1 ENDP CSEG ENDS END START 3)

15、上機調(diào)試源程序 程序的分析、代碼的編寫完成后,開始對代碼進行編譯和調(diào)試,我們采用“Masm for Wingdors 集成實驗環(huán)境2015”對所編代碼進行編譯、調(diào)試、運行,程序運行結(jié)果如下圖所示:a.編譯目標文件b.生成可執(zhí)行文件c.運行從鍵盤輸入“Shift+Y”顯示姓名從鍵盤輸入任意鍵顯示學號從鍵盤輸入“Shift+T”自動顯示姓名姓名完再顯示學號運行時總共有26種顏色變化四、課程設計總結(jié)1)設計的特點 在動畫程序中,通過行列變化,26種不同組合的顏色屬性設置,以一定的速度產(chǎn)生字符,顯示出自己的學號、姓名以及字符顏色,通過調(diào)用將姓名學號連續(xù)顯示出來,實現(xiàn)動態(tài)的效果,讓人在視覺上產(chǎn)生美感。2)設計的不足姓名學號動態(tài)顯示略顯單一,若能再加上姓名學號

溫馨提示

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

最新文檔

評論

0/150

提交評論