版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、課程設(shè)計報告 學(xué)生姓名: 甄曉 學(xué)號:130704121 專業(yè)班級: 電科131班 課程名稱: 微型計算機(jī)原理及應(yīng)用技術(shù) 學(xué)年學(xué)期: 20152016學(xué)年第一學(xué)期 同組人員: 張思雨 張文娟 張哲 姚博朗 指導(dǎo)教師: 趙艷 2 0 15年 12月課程設(shè)計成績評定表學(xué)生姓名甄曉學(xué) 號130704121成績專業(yè)班級電科131班起止時間12月21日12月28日 設(shè)計題目 字符串動畫顯示 指導(dǎo)教師評語指導(dǎo)教師: 年 月 日目錄一 設(shè)計目的1二 設(shè)計任務(wù)和要求1三 設(shè)計內(nèi)容1四 源代碼以及主要代碼分析5五 效果及功能展示12六 自己的貢獻(xiàn)和心得體會14字符串的動畫顯示程序設(shè)計一、設(shè)計目的:1、掌握匯編語
2、言,會利用匯編語言編寫一定功能的程序;2、熟悉DOS環(huán)境以及在DOS下會調(diào)試編寫好的匯編程序;3、熟悉常用的DOS功能;4、小組合作完成設(shè)計題目。二、設(shè)計任務(wù)和要求1、設(shè)計字符串的動畫顯示程序2、程序設(shè)計基本要求 1)菜單內(nèi)容包括:輸入字符串;字符串動畫顯示;退出。 2)輸入字符串選擇該項后,可以輸入一個字符串。該字符串即為動畫顯示時所顯示的字符串。 3)字符串動畫顯示所顯示字符串在一矩形框內(nèi)從無到有,從右至左移動,完全從框內(nèi)移出后,又從右至左移動,直到有任意鍵按下,停止字符串動畫顯示返回到主菜單。 4)在主菜單中選擇退出項,則結(jié)束程序返回DOS。三、設(shè)計內(nèi)容:1、使用的DOS功能:1) 顯示
3、字符串 MOV AH,09H INT 21H ;入口參數(shù)DS:DX=緩沖區(qū)2)鍵盤輸入一個字符 MOV AH,01H INT 21H ; AL=輸入的字符3)終止當(dāng)前程序并返回調(diào)用程序 MOV AH,4CH INT 21H ;AL=退出碼4)輸入字符串 MOV AH,0AH INT 21H ;入口參數(shù)DS:DX=緩沖區(qū)2、使用工具和軟件:PC機(jī)一臺,MASM匯編軟件3、流程圖:1) 字符串從右向左移動結(jié)束 輸完?獲取字符串YYN 字符串從右向左移流程圖開始 輸出字符串設(shè)置光標(biāo)起始位置延遲1輸出空白覆蓋字符串延遲2 結(jié)束?N橫坐標(biāo)更新2)整體流程圖開始NNN從鍵盤讀入字符符輸入任意字符顯示“Pr
4、ess any key to exit“調(diào)用字符串移動框圖與1相比較是否相等與2相比較是否相等延時,等待輸入指令顯示字符串從右向左移動與3相比較是否相等接收輸入的字符 ,并存在以str開頭的內(nèi)存單元從鍵盤輸入字符串,顯示在屏幕,光標(biāo)前移顯示菜單退出程程序,返回DOSYYY四、源代碼以及主要代碼分析1、字符串從右向左移動程序CODE SEGMENTASSUME CS:CODE,DS:CODESTART: MOV AX,CODE MOV DS,AX MOV AX,0B800H MOV ES,AXCLDAGAIN: MOV AX,3 INT 10H ;顯示文字 LEA DX,MENU MOV AH,
5、9 ;輸出字符串 INT 21HINPUT: MOV AH,1 INT 21H ;從鍵盤輸入字符 CMP AL,1 JNE CP2 CALL SUB01 ;JMP INPUTCP2: CMP AL,2 JNZ CP3 CALL SUB02 ;字符串左右移動 JMP AGAIN ;返回到主菜單CP3: CMP AL,3 ;返回DOS JNZ INPUT LEA DX,MESG MOV AH,9 INT 21H MOV AH,1 INT 21H MOV AH,4CH INT 21HDELAY PROC PUSH CX PUSH DX MOV DX,0100D1: MOV CX,0FFFH LOOP
6、 $ DEC DX JNZ D1 POP DX POP CX RETDELAY ENDPCSH: MOV AL,20H MOV CX,60 ;初始化CS1: REP STOSB RETSUB01: MOV AX,0E0DH INT 10H MOV AL,0AH INT 10H LEA DX,STR1 MOV AH,0AH INT 21H ;輸入一個字符串 MOV AX,0E0AH INT 10H ;換行 ;RETSUB02: CMP STR1+1,2 ;取串長最短為2個字符 JNB Y2 JMP QUITY2: CALL LINE ;畫矩形框 MOV DX,ES PUSH DS POP ES
7、MOV DI,1000H CALL CSH MOV CL,STR1+1 MOV CH,0 ;取串長 LEA SI,BUF ;指向串首 MOV DI,1000H ADD DI,60-1 MOV NUM,DI ADD NUM,CX REP MOVSB ;移至顯示緩沖區(qū),重復(fù)存儲字符串 CALL CSHSHOW: MOV ES,DX MOV BP,1000H ;恢復(fù)數(shù)據(jù)區(qū)Y3: MOV SI,BP ;置源數(shù)據(jù)區(qū)指針 MOV DI,LEFT ;找屏幕位置 MOV AH,7CH MOV CX,60-2Y4: LODSB STOSW ;送顯存 LOOP Y4 MOV AH,1 INT 16H JNZ SS
8、S ;按任意鍵,返回主菜單 CALL DELAY INC BP ;源數(shù)據(jù)區(qū)指針后移一位 CMP BP,NUM JB SS1 MOV BP,1000H ;恢復(fù)數(shù)據(jù)區(qū)SS1: JMP Y3SSS: MOV STR1+1,0QUIT: XOR DI,DI MOV CX,80*25 MOV AX,720H REP STOSW ;清全屏 ;RET JMP AGAINLINE: MOV DI,(18*80+10)*2 ;矩形框 MOV AL,201 ;左上角 MOV AH,0EH STOSW MOV CX,60-2 MOV AL,205 ;橫框 REP STOSW MOV AL,187 ;右上角 STOS
9、W ADD DI,20*2 MOV AL,186 ;豎框 STOSW MOV LEFT,DI MOV CX,60-2 MOV AL,20H ;空格 REP STOSW MOV RIGHT,DI MOV AL,186 ;豎框 STOSW ADD DI,20*2 MOV AL,200 ;左下角 STOSW MOV CX,60-2 MOV AL,205 ;橫框 REP STOSW MOV AL,188 ;右下角 STOSW RETMENU DB 5 DUP(0AH)DB 31 DUP( ),MAIN MENU,0DH,0AHDB 25 DUP( ),201,21 DUP(205),187,0DH,0
10、AHDB 25 DUP( ),186, 1.Input a String .,186,0DH,0AHDB 25 DUP( ),186, 2.Display Model . ,186,0DH,0AHDB 25 DUP( ),186, 3.Return to DOS . ,186,0DH,0AHDB 25 DUP( ),200,21 DUP(205),188,0DH,0AHDB 28 DUP( ),Choice(1,2,3):$MESG DB 0dh,0ah,0dh,0ah,9,Press any key to exit .$ NUM DW 0 LEFT DW 0 RIGHT DW 0 STR1
11、DB 21 DB 0 BUF DB 0DH,20 DUP(0) CODE ENDS END START五、功能效果展示(1)運行程序后顯示的主菜單(2)按“1”顯示待輸入字符串狀態(tài)(3)按“2”字符串在矩形框中從右向左移動(4)按“3”顯示按任意鍵返回(5)按任意鍵返回六、自己的貢獻(xiàn)和心得體會 一次微機(jī)原理課程設(shè)計,一次全新的體驗,在這次課程設(shè)計中,我們獲益良多。課程設(shè)計以小組的形式進(jìn)行,我們小組五人,每人負(fù)責(zé)不同的工作,于合作中追求共贏。張思雨主要負(fù)責(zé)框圖的設(shè)計,張哲主要負(fù)責(zé)設(shè)定菜單和字符串的輸入,張文娟主要負(fù)責(zé)字符串移動,我負(fù)責(zé)邊框的設(shè)置和程序的返回,姚博朗主要負(fù)責(zé)內(nèi)容的串接、最后的檢錯及
12、報告的編寫。 一次程序的設(shè)計對于我們這些初入編程界的新手來說,都是一項工作量不少的作業(yè)。在總的程序設(shè)計中,需要我們搜集相關(guān)的匯編語言,分析每一段程序與其他段之間的聯(lián)系,并將它們連接起來。然而這并不是結(jié)束,我們還要將其編輯編譯運行調(diào)試,查詢錯誤,改正錯誤,使程序正常運行。說實話,剛得到課程設(shè)計題目時,我們真的有點兩眼一摸黑,不知如何下手,但經(jīng)過上網(wǎng)、圖書館查詢、課本研究后,我們終于一步步設(shè)計好了程序框圖,并寫出來程序,雖然在程序運行過程中出現(xiàn)了問題,但經(jīng)過學(xué)霸的幫助和相關(guān)資料的查找,我們的問題終于得到了解決,完成了本次課程設(shè)計。 時間匆匆,轉(zhuǎn)眼就到了考核的日期。經(jīng)過這次課程設(shè)計,我感覺我的微原知識都經(jīng)過了一次刷新,添加了更多的內(nèi)容。課程設(shè)計是一項既考驗知識,又考核我們對知識運用的任務(wù)。通過這次課設(shè),我覺得知識不僅要學(xué)還要會用,即使老師
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鞣制工藝對毛皮抗張強(qiáng)度的影響考核試卷
- 硬皮病抗炎治療研究-洞察分析
- 語言學(xué)校師資隊伍建設(shè)-洞察分析
- 移動金融創(chuàng)新趨勢-洞察分析
- 2024-2025學(xué)年廣東省佛山市S6高質(zhì)量發(fā)展聯(lián)盟高二上學(xué)期期中聯(lián)考生物試題(解析版)
- 中國醫(yī)師協(xié)會工作計劃
- 中學(xué)2025-2025第一學(xué)期初中語文教研組工作計劃
- 2023-2024學(xué)年四川省成都市蓉城名校高二上學(xué)期期末聯(lián)考生物試題(解析版)
- 2023-2024學(xué)年山西省運城市高一上學(xué)期期末考試生物試題(解析版)
- 系統(tǒng)集成與軟件架構(gòu)-洞察分析
- 心理健康與職業(yè)生涯(第一章)課件
- DB-T 29-202-2022 天津市建筑基坑工程技術(shù)規(guī)程
- DB51∕T 5060-2013 四川省預(yù)拌砂漿生產(chǎn)與應(yīng)用技術(shù)規(guī)程
- 粵教版三年級勞動與技術(shù)全冊教案教學(xué)設(shè)計
- 越努力越幸運商務(wù)紅色工作匯報PPT模板
- (完整版)外科學(xué)名詞解釋【完整版】
- 永磁同步電機(jī)控制系統(tǒng)設(shè)計與仿真畢業(yè)論文
- 傳感器與檢測技術(shù)課后習(xí)題和答案(陳杰)
- 藏歷新年ppt模版課件
- 基于PLC的自動門控制系統(tǒng)
- 滬教牛津版小學(xué)四年英語上冊全冊教案
評論
0/150
提交評論