




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、微機(jī)原理課程設(shè)計(jì)報(bào)告學(xué)院:電氣學(xué)院班級:姓名:學(xué)號:指導(dǎo)老師:時(shí)間:2014年1月15日一. 課程設(shè)計(jì)目的:1. 結(jié)合微型計(jì)算機(jī)原理課程的學(xué)習(xí),進(jìn)一步鞏固已學(xué)的知識,同時(shí)針對計(jì)算機(jī)原理知識的具體應(yīng)用,學(xué)會對系統(tǒng)中 DOS和BIOS勺使用。學(xué)會使用屏幕編輯程 序一一EDIT弄懂匯編程序的上級過程以及如何運(yùn)用DEBUGS件進(jìn)行匯編程序的調(diào)試。2. 學(xué)會將課本上的理論知識和實(shí)際有機(jī)的結(jié)合起來,鍛煉自己分析解決實(shí)際問題的能力。提高適應(yīng)實(shí)際,實(shí)踐編程的能力。3. 為了進(jìn)一步鞏固學(xué)習(xí)的理論知識,增強(qiáng)學(xué)生對所學(xué)知識的實(shí)際應(yīng)用能力和 運(yùn)用所學(xué)的知識解決實(shí)際問題的能力,開始為期兩周的課程設(shè)計(jì)。通過設(shè)計(jì)使學(xué) 生在
2、鞏固所學(xué)知識的基礎(chǔ)之上具有初步的單片機(jī)系統(tǒng)設(shè)計(jì)與應(yīng)用能力。二. 課程設(shè)計(jì)內(nèi)容:1接受年、月、日信息并顯示的設(shè)計(jì)為掌握響鈴使用方法, 并掌握年、月、日輸入方法。編寫程序,先顯示“WHAT IS THE DATA (MM/DD/YY)?”并響鈴一次,然后接受鍵盤輸入的月/日/年信息,并顯示。2. 字符串匹配設(shè)計(jì)為掌握提示信息的設(shè)置方法及讀取鍵入信息的方法,編寫程序?qū)崿F(xiàn)兩個(gè)字 符串比較,如相同則顯示“ MATCH,否則顯示“ NO MATCH。3. 從鍵盤輸入數(shù)據(jù)并顯示的設(shè)計(jì)為掌握鍵盤接受數(shù)據(jù)的方法,并了解將鍵盤數(shù)據(jù)顯示時(shí)必須轉(zhuǎn)換為ASC碼的原理,編寫程序,將鍵盤接受到的四位十六進(jìn)制數(shù)據(jù)轉(zhuǎn)換為等值的
3、二進(jìn)制數(shù)顯 示。4. 字符和數(shù)據(jù)的顯示設(shè)計(jì)為掌握字符和和數(shù)據(jù)的顯示方法。編寫程序,先顯示信息:INPUT STRING,THE END FLAG IS再接受字符。如為0-9,則計(jì)數(shù)器加1,并顯示數(shù)據(jù);如為非數(shù)字, 則直接顯示,但不計(jì)數(shù)。三. 典型題目舉例:1. 接收年月日信息并顯示的設(shè)計(jì)為掌握響鈴使用方法, 并掌握年、月、日輸入方法。編寫程序,先顯示“WHAT IS THE DATA (MM/DD/YY)?”并響鈴一次,然后接受鍵盤輸入的月/日/年信息,并顯示。流程圖:程序代碼及注釋:;顯示字符串;月字符串;日字符串;年字符串 ;存放接受的月DATA SEGMENT51 DB WHAT IS
4、THE DATA (MM/DD/YY)? ,ODH,OAH,$52 DB MONTH,ODH,OAH,$53 DB DAY,0DH,0AH,$54 DB YEAR,0DH,0AH,$55 DB 4DB ?DB 4 DUP( $);存放接受的日56 DB 4DB ?DB 4 DUP( $);存放接受的年57 DB 6DB ?DB 6 DUP( $)DATA ENDSCODE SEGMENT;段寄存器初始化ASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV DX,OFFSET S1MOV AH,9INT 21HMOV DL,07HMOV AH,2
5、INT 21HMOV CX,0FFFHL1:PUSH CXMOV CX,0FFFFHL2: LOOP L2POP CXLOOP L1MOV DX,OFFSET S5MOV AH,0AHINT 21HMOV DX,OFFSET S6MOV AH,0AHINT 21HMOV DX,OFFSET S7MOV AH,0AHINT 21HMOV DL,0DHMOV AH,2INT 21HMOV DL,0AHMOV AH,2INT 21HMOV DX,OFFSET S5ADD DX,2MOV AH,9INT 21HMOV DX,OFFSET S2MOV AH,9INT 21HMOV DX,OFFSET S
6、6ADD DX,2MOV AH,9INT 21HMOV DX,OFFSET S3MOV AH,9INT 21HMOV DX,OFFSET S7;顯示提示信息;響鈴一次;延遲,用內(nèi)外雙重循環(huán)實(shí)現(xiàn);接受月數(shù)據(jù),放入變量;接受日數(shù)據(jù),放入變量;接受年數(shù)據(jù),放入變量;顯示回車;顯示換行;顯示月數(shù)據(jù);顯示月字符;顯示日數(shù)據(jù);顯示日字符;顯示年數(shù)據(jù);顯示年字符;返回DOSADD DX,2MOV AH,9INT 21HMOV DX,OFFSET S4MOV AH,9INT 21HMOV AH,4CHINT 21HCODE ENDSEND START結(jié)果截圖:?DATAMT2NA2XA1OD1-H0M002.
7、 字符串的匹配設(shè)計(jì)為掌握提示信息的設(shè)置方法及讀取鍵入信息的方法。編寫程序?qū)崿F(xiàn)兩個(gè)字符 串比較。如相同,則顯示“ MATC”否則,顯示“ NO MATCH程序清單:CRLF MACRO;顯示回車MOV DL,0DHMOV AH,02HINT 21HMOV AH,02HMOV DL,0AHINT 21HENDMDATA SEGMENTMESS1 DB MATCH,0DH,0AH,$MESS2 DB NO MATCH,0DH,0AH,$MESS3 DB INPUT STRING1!,0DH,0AH,$MESS4 DB INPUT STRING2!,0DH,0AH,$MAXLEN1 DB 100STR
8、ING1 DB 100 DUPMAXLEN2 DB 100STRING2 DB 100 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATASTART: MOV AX,DATAMOV DS,AXMOV ES,AXMOV AH,09HMOV DX,OFFSET MESS3INT 21HMOV AL,MAXLEN1MOV BX,OFFSET STRING1MOV BX,ALMOV AH,0AHMOV DX,OFFSET STRING1INT 21H ;CRLFMOV AH,09HMOV DX,OFFSET MESS4INT 21HMOV
9、 AL,MAXLEN2MOV BX,OFFSET STRING2MOV BX,ALMOV AH,0AHMOV DX,OFFSET STRING2INT 21HCRLFCLDLEA SI,STRING1MOV CL,SI+1MOV CH,0BEING: LEA DI,STRING2MOV DL,DI+1MOV DH,0J1: MOV AL,SI+2 ;CMP DI+2,ALJE J3J2: INC DI ;DEC DX; 顯示提示信息 1; 最大字符緩沖接收鍵入的字符串 1; 顯示提示信息 2; 最大字符緩沖設(shè)置; 接收鍵入的字符串 2;字符串 1 的地址送給 SI; 字符串 1的字符數(shù)送給 C
10、X;字符串 2 的地址送給 DI; 字符串 2的字符數(shù)送給 DX字符串 1的第一個(gè)字符在字符串 2中匹配; 匹配成功則跳轉(zhuǎn)指向字符串 2下一個(gè)字符JZ NOMAT ;字符串 2 完,不匹配JMP J1 ;字符串 2沒完, 重新匹配J3: DEC CXJZ MATCH ;字符串 1完,匹配DEC DXJZ NOMAT ;字符串 2 完,不匹配INC SI;指向串 1 下一個(gè)字符INC DI;指向串 2 下一個(gè)字符MOV AL,SI+2CMP DI+2,ALJE J3DEC DXJZ NOMATLEA SI,STRING1MOV CL,SI+1MOV CH,0JMP J1MATCH: MOV AH
11、,09HMOV DX,OFFSET MESS1INT 21HJMP NEXTNOMAT: MOV AH,09HMOV DX,OFFSET MESS2INT 21HNEXT: MOV AH,4CHINT 21HCODE ENDSEND START;匹配 , 跳轉(zhuǎn);字符串 2 完,不匹配重新從串 1的第一個(gè)字符匹配;輸出匹配信息;輸出不匹配信息;程序終止3從鍵盤輸入數(shù)據(jù)并顯示的數(shù)據(jù)為掌握接收鍵盤數(shù)據(jù)的方法,并了解將鍵盤數(shù)據(jù)顯示時(shí)須轉(zhuǎn)換為 ASCI碼的 原理。編寫程序, 將鍵盤接收到的四位十六進(jìn)制數(shù)據(jù)轉(zhuǎn)換為等值的二進(jìn)制數(shù), 再 顯示在終端上。程序清單:DATA SEGMENTMSG1 DB Hex:
12、, $MSG2 DB 0DH, 0AH, Binary:, $ COUNT EQU 4 BUF DB 4 DUP(?)DATA ENDS CODE SEGMENTASSUME CS:CODE,DS:DATA START: MOV AX, DATAMOV DS, AXLEA DX, MSG1MOV AH, 9INT 21HMOV CX, COUNTMOV SI, 0INPUT:NEXT1: MOV DL, 0SHLBL, 1JNCSKIPINCDLMOVAH, 1 ;INT 21HMOV BUFSI, ALDEC CXINC SI CMP CX, 0JNZ INPUTNEXT3: LEA DX,
13、 MSG2MOV AH, 9INT 21HMOV CX, COUNTMOV SI, 0NEXT2: MOV BL, BUFSICMP BL , 9JBE OKSUB BL, 7OK: PUSH CXMOV CL ,4 SHL BL, CLMOV CX, 4 ; 4通過四次循環(huán)從鍵盤讀入四位十六進(jìn)制數(shù)讀入的字符v= 9轉(zhuǎn)向OK讀入字符 = 9 減 7邏輯左移4位,低4位d高4位次循環(huán)將當(dāng)前處理字符的 4 位二進(jìn)制輸出SKIP: MOV AH, 2INT 21HLOOP NEXT1POP CX ;INC SILOOP NEXT2 ; 4次循環(huán)將 4位十六進(jìn)制數(shù)每位轉(zhuǎn)換為對應(yīng)的 4位二進(jìn)制 EXIT
14、: MOV AH, 4CHINT 21H CODE ENDSEND START4字符和數(shù)據(jù)的顯示程序?yàn)檎莆兆址蛿?shù)據(jù)的顯示方法。編寫程序,先顯示信息:INPUTSTRING,THEEND FLAG IS$, 再接收字符。如為 0-9, 則計(jì)數(shù)器加 1,并顯示數(shù)據(jù);如為非數(shù)字,則 直接顯示,但不技計(jì)數(shù)。程序清單:CRLF MACROMOV AH,02HMOV DL,0DHINT 21HMOV AH,02HMOV DL,0AHINT 21HENDMDATA SEGMENTMESS1 DB INPUT$MESS2 DB zifu zongshu= $MESS3 DB no zifu zongshu=
15、 $MESS4 DB shuzi zifu zongshu= $ TOTAL DW ?DATA ENDSSTACK SEGMENTSTA DW 32 DUP (?)TOP DW ?STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK START: MOV AX,DATAMOV DS,AXMOV ES,AXMOV SP,TOP ;MOV BX,0000H ;MOV AH,09HMOV DX,OFFSET MESS1INT 21HCRLFXXX: MOV AH,01HINT 21H ;CMP AL,20HJZ UUU ;CMP
16、AL,0DHJNZ IIICRLF ;JMP UUUIII: CMP AL,30HJB YYYCMP AL,39HJBE VVV;0-9YYY: INC BX;VVV: INC TOTALJMP XXXUUU: CRLF初始化計(jì)數(shù)值清 0接收鍵入字符是空格鍵則轉(zhuǎn) UUU是回車鍵則轉(zhuǎn) UUU轉(zhuǎn) VVV計(jì)數(shù)值加 1MOV AH,09H顯示字符總數(shù)LEA DX,MESS2INT 21HMOV AX,TOTALCALL DISPMOV AH,02HMOV DL,HINT 21HCRLF;回車換行MOV AH,09HMOV DX,OFFSET MESS3INT 21H;顯示非數(shù)字字符總數(shù)MOV AX,B
17、XCALL DISPMOV AH,02HMOV DL,HINT 21H;十六進(jìn)制數(shù)標(biāo)志CRLFMOV AH,09HLEA DX,MESS4;顯示數(shù)字字符總數(shù)INT 21HMOV AX,BXSUB TOTAL,AXMOV AX,TOTALCALL DISPMOV AH,02HMOV DL,HINT 21HMOV AX,4C00HINT 21HDISPP PROCNEAR;顯示子程序,顯示AL中的數(shù)按十六進(jìn)制數(shù)方式MOV BL,AL;AL中數(shù)送 BLKKK: MOV DL,BLMOV CL,04ROL DL,CLAND DL,0FHCALL DISPL;顯示字節(jié)高位MOV DL,BLAND DL,
18、0FHCALL DISPL;顯示字節(jié)低位RETDISPP ENDPDISPL PROC NEARADD DL,30H;由數(shù)值轉(zhuǎn)為參應(yīng)字符的 ASCII 碼CMP DL,3AHJB DDD;是 0-9 轉(zhuǎn) DDDADD DL,27H;是 A-FDDD: MOV AH,02HINT 21H;顯示 DL 中字符RET; 返回DISPL ENDP;顯示子程序,顯示AX中的數(shù)按十六進(jìn)制數(shù)方式DISP PROC NEARPUSH BXPUSH CXPUSH DXPUSH AX; 入棧保存MOV AL,AHCALL DISPP;顯示高字節(jié)POP AXCALL DISPPPOP DXPOP CXPOP BXRET ; 出棧DISP ENDPCODE ENDSEND START四心得體會: 經(jīng)過這次課程設(shè)計(jì),跟加深了對匯編語言的理解和認(rèn)識,尤其是DOS系統(tǒng)的功能調(diào)用。這次一共做了 4道題目,每一道題都有
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 欄桿承包合同協(xié)議書
- 地鐵工程施工方案
- 上海室內(nèi)消防工程合同
- 奢侈品質(zhì)押擔(dān)保合同
- 花箱花卉施工方案
- 2025年人力資源制度:趣味運(yùn)動會活動策劃方案
- 旱地改水田施工方案
- 森林防火通道施工方案
- 茂名水幕電影施工方案
- 廣西河池市宜州區(qū)2024-2025學(xué)年七年級上學(xué)期期末生物試題(原卷版+解析版)
- GB∕T 17587.1-2017 滾珠絲杠副 第1部分:術(shù)語和符號
- 第4課動物朋友(一)(課件)蘇少版美術(shù)二年級下冊
- 用戶服務(wù)滿意度評價(jià)表
- [江西]20萬噸自來水廠工藝圖紙?jiān)O(shè)計(jì)(附58頁設(shè)計(jì)方案)
- 土石壩設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 【分享貼】2018AFP案例結(jié)業(yè)題目10:青年家庭限購政策下的公寓商鋪答案解析
- 插花構(gòu)圖二學(xué)習(xí)教案
- 三年級學(xué)生學(xué)情分析
- 產(chǎn)品安全符合性聲明
- 高中化學(xué)競賽-中級無機(jī)化學(xué)--金屬原子簇word版本
- 沖壓工藝與模具設(shè)計(jì)拉深
評論
0/150
提交評論