版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、.微機(jī)原理課程設(shè)計(jì)報(bào)告班級(jí): 姓名: 學(xué)號(hào):一、目的結(jié)合微機(jī)原理課程的學(xué)習(xí),進(jìn)一步鞏固所學(xué)只是,掌握匯編語(yǔ)言的編程要領(lǐng),熟悉匯編程序上機(jī)過(guò)程以及進(jìn)行程序調(diào)試。二、設(shè)計(jì)任務(wù),程序清單,流程圖任務(wù)1(具體題目要求):字符串匹配設(shè)計(jì) 為掌握提示信息的設(shè)置方法及讀取鍵入信息的方法。編寫程序?qū)崿F(xiàn)兩個(gè)字符串比較。如相同,則顯示:“MATCH”,否則,則顯示“NO MATCH” 程序清單:DATA SEGMENT INPUT1 DB 'INPUT STRING1!',0DH,0AH,'$' INPUT2 DB 'INPUT STRING2!',0DH,0AH,
2、'$' MAT DB 0DH,0AH,'MATCH!$' MISMAT DB 0DH,0AH,'NO MATCH!$' LEN1 DB 20 STRING1 DB 20 DUP(?) LEN2 DB 20 STRING2 DB 20 DUP(?)DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATAMAIN PROC FAR MOV AX,DATA MOV DS,AX MOV ES,AX MOV AH,09H MOV DX,OFFSET INPUT1 INT 21H MOV AL,LEN1 MOV
3、 BX,OFFSET STRING1 MOV BX,AL MOV AH,0AH MOV DX,OFFSET STRING1 INT 21H CALL CRLF MOV AH,09H MOV DX,OFFSET INPUT2 INT 21H MOV AL,LEN2 MOV BX,OFFSET STRING2 MOV BX,AL MOV AH,0AH MOV DX,OFFSET STRING2 INT 21H CALL CRLF CLD LEA SI,STRING1 LEA DI,STRING2 MOV CX,5 REPE CMPSB JNE NOMAT MOV AH,9 MOV DX,OFFSE
4、T MAT INT 21H JMP EXITNOMAT:MOV AH,9 LEA DX,MISMAT INT 21HEXIT: MOV AH,4CH INT 21HCRLF PROC NEAR MOV DL,0DH MOV AH,2 INT 21H MOV DL,0AH MOV AH,2 INT 21HRETCRLFENDPMAIN ENDPCODE ENDSEND MAIN流程圖:使用INT21H的0A號(hào)子功能,接收鍵入字符串1返回DOS顯示“MATCH”顯示“NOMATCH”所有字符相等嗎?字符串1和串2中所有字符作比較開始段寄存器初始化顯示“請(qǐng)輸入字符串1”使用INT21H的0A號(hào)子功能
5、,接收鍵入字符串1顯示“請(qǐng)輸入字符串2” .任務(wù)2(具體題目要求)將鍵盤輸入的小寫字母轉(zhuǎn)換為大寫字母的設(shè)計(jì)為了解小寫字母和大寫字母在計(jì)算機(jī)內(nèi)的表示方法,并學(xué)習(xí)如何進(jìn)行轉(zhuǎn)換。編寫程序,接收鍵盤字符,并將其中的小寫字母轉(zhuǎn)變?yōu)榇髮懽帜?,然后顯示在屏幕上。程序清單:CRLF MACRO MOV DL,0DH MOV AH,02H INT 21H MOV AH,02H MOV DL,0AH INT 21HENDMDATA SEGMENTINPUT1 DB 100 DB 0 DB 100 DUP('$')MES1 DB 'Please Input a String:',0D
6、H,0AH,'$'MES2 DB 'The Output Is:',0DH,0AH,'$'DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AXTISHI: MOV AH,09H MOV DX,OFFSET MES1 INT 21H INPUT: MOV DX,OFFSET INPUT1 MOV AH,0AH INT 21H CRLF MOV CX,00H MOV CL,INPUT1+1 LEA SI,INPUT1+2 NEXT: CMP BYTE PTR
7、SI,'a' JB CONT CMP BYTE PTR SI,'z' JA CONT SUB BYTE PTR SI,20HCONT: INC SI LOOP NEXTTISHI1:MOV AH,09H MOV DX,OFFSET MES2 INT 21H OUTPUT:LEA DX,INPUT1+2 MOV AH,09H INT 21HEXIT: MOV AH,4CH INT 21HCODE ENDS END START流程圖:返回DOS將小寫轉(zhuǎn)換為大寫輸入是大于z嗎?輸入是小于a嗎?使用INT21H的09號(hào)子功能,輸出大寫字符串CL為0嗎?CL自減一SI自加
8、一指向下一字符開始段寄存器初始化顯示“請(qǐng)輸入一字符串”使用INT21H的0A號(hào)子功能,接收鍵入字符串輸入字符串字符個(gè)數(shù)給CL指針SI指向輸入字符串首地址任務(wù)3(具體題目要求)鍵盤輸入數(shù)據(jù)并顯示的設(shè)計(jì)為掌握接收鍵盤數(shù)據(jù)的方法,并了解將鍵盤數(shù)據(jù)顯示時(shí)須轉(zhuǎn)換為ASCII碼的原理。編寫程序,將鍵盤接收到的四位十六進(jìn)制數(shù)據(jù)轉(zhuǎn)換為等值的二進(jìn)制數(shù),再顯示在終端上。程序清單: CRLF MACRO MOV AH,02H MOV DL,0DH INT 21H MOV AH,02H MOV DL,0AH INT 21HENDMDATA SEGMENT MES1 DB 'Please Input The n
9、umber:$' MES2 DB 'The Result Are:$'DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATAMAIN PROC FARSTART:MOV AX,DATA MOV DS,AXTISHI: MOV DX, OFFSET MES1 MOV AH,09H INT 21H CRLF MOV BX,0 MOV CX,4INPUT: mov Ah,07H INT 21H CMP AL,48 JB INPUT CMP AL,57 JNA TRANS CMP AL,97 JB INPUT CMP AL,102 jA INP
10、UT JMP ENGTRANS : MOV DL,AL MOV AH,02H INT 21H SUB AL,30H JMP FBIENG: MOV DL,AL MOV AH,02H INT 21H SUB AL,57H FBI: CBW XCHG AX,BX MOV DX,16 MUL DX XCHG AX,BX ADD BX,AX LOOP INPUT CRLFDISP: LEA DX,MES2 MOV AH,09H INT 21H CRLF MOV CX,16BINARY :TEST BX,8000H JNZ XONE MOV DL,'0' MOV AH,02H INT 2
11、1H JMP NEXTXONE: MOV DL,'l' MOV AH,02H INT 21HNEXT: SHL BX,1 LOOP BINARY CRLFEXIT: MOV AH,4CH INT 21H MAIN ENDPCODE ENDS END START流程圖:開始段寄存器初始化AL減57H,將ASCII碼轉(zhuǎn)為十進(jìn)制返回DOS使用INT21H的07號(hào)子功能,接收一個(gè)字符給AL使用INT21H的02號(hào)子功能,顯示輸入字符AL小于0嗎?AL大于9嗎?AL小于A嗎?AL大于Z嗎?顯示輸出提示將BX左移16次分別與8000H運(yùn)算輸出16位二進(jìn)制數(shù)AL減30H,將ASCII碼轉(zhuǎn)為十
12、進(jìn)制顯示輸入字符將輸入4位ASCII碼轉(zhuǎn)換為一個(gè)四位十六進(jìn)制數(shù),放入BX任務(wù)4(具體題目要求)為掌握字符和數(shù)據(jù)的顯示方法。編寫程序,先顯示信息:INPUT STRING,THE END FLAG IS $,再接收字符。如為0-9,則計(jì)數(shù)器加1,并顯示數(shù)據(jù);如為非數(shù)字,則直接顯示,但不計(jì)數(shù)。程序清單:CRLF MACRO MOV AH,02H MOV DL,0DH INT 21H MOV AH,02H MOV DL,0AH INT 21HENDMDATA SEGMENT MES DB 'INPUT STRING,THE END FLAG IS$!' MES1 DB 'Th
13、e Data Nunmber Count Is:$' NUM DB 0 DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AXTISHI: LEA DX,MES MOV AH,09H INT 21H CRLFINPUT: MOV Ah,01H INT 21H CMP AL,'$' JZ DISP CMP AL,48 JB NEXT CMP AL,57 JA NEXT INC NUMNEXT: JMP INPUTDISP: CRLFTISHI1: LEA DX,MES1 MOV AH
14、,09H INT 21H CRLF MOV AL,NUM MOV BL,AL MOV CL,4 ROL AL,CL AND AL,0FH ADD AL,30H CMP AL,39H JBE K1 ADD AL,7K1: MOV DL,AL MOV AH,02H INT 21H AND BL,0FH ADD BL,30H CMP BL,39H JBE K2 ADD BL,7K2: MOV DL,BL MOV AH,02H INT 21H MOV DL,'H' MOV AH,02H INT 21H CRLFEXIT: MOV AH,4CH INT 21HCODE ENDS END
15、START流程圖: 是$字符?顯示十六進(jìn)制表示的個(gè)數(shù)開始顯示提示信息使用INT21H的01號(hào)子功能,接收鍵入字符顯示提示信息1統(tǒng)計(jì)字符個(gè)數(shù)按十六進(jìn)制顯示小于0嗎?大于9嗎?返回DOS計(jì)數(shù)NUM加一任務(wù)5(具體題目要求)為掌握字符和數(shù)據(jù)的顯示方法。編寫程序,先顯示信息:INPUT STRING,THE END FLAG IS$,再接收字符。如為0-9,則計(jì)數(shù)器加一,并顯示數(shù)據(jù);如為非數(shù)字,則直接顯示,但不計(jì)數(shù)。程序清單:CRLF MACRO MOV DL,0DH MOV AH,02H INT 21H MOV AH,02H MOV DL,0AH INT 21HENDMDATA SEGMENT ME
16、S DB 'Please Input A Number,Press C To Exit:','$' MES1 DB 'The Input Is Not A Number,Please Input Again:','$'DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AX MOV DX, OFFSET MES MOV AH,09H INT 21H CRLFL3: MOV AH,01H INT 21H CMP AL,'C' JE EXIT CMP AL,30H JB L2 CMP AL,39H JA L2 AND AL,0FH CMP AL,0 JE EXIT MOV BL,ALL1: MOV DL,07H MOV AH,02H INT 21H CALL DELAY DEC BL JNZ L1 JMP L3 CRLFEXIT: MOV AH,4CH
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年粉煤灰銷售合同范本(含供應(yīng)鏈金融服務(wù))
- 二零二五美容院美容院美容院品牌戰(zhàn)略規(guī)劃與實(shí)施合同3篇
- 影視院校校外實(shí)訓(xùn)基地協(xié)議書(2篇)
- 二零二五年度民辦中學(xué)教師教學(xué)質(zhì)量提升服務(wù)合同4篇
- 打樁施工方案
- 2025年度個(gè)人房貸提前還款手續(xù)費(fèi)合同4篇
- 財(cái)務(wù)風(fēng)險(xiǎn)述職報(bào)告模板
- 2024年中級(jí)經(jīng)濟(jì)師考試題庫(kù)含答案【鞏固】
- 二零二五年度時(shí)尚面料品牌授權(quán)合作協(xié)議4篇
- 2025年能源互聯(lián)網(wǎng)項(xiàng)目合作實(shí)施保密及技術(shù)交流協(xié)議3篇
- 非誠(chéng)不找小品臺(tái)詞
- 2024年3月江蘇省考公務(wù)員面試題(B類)及參考答案
- 患者信息保密法律法規(guī)解讀
- 老年人護(hù)理風(fēng)險(xiǎn)防控PPT
- 充電樁采購(gòu)安裝投標(biāo)方案(技術(shù)方案)
- 醫(yī)院科室考勤表
- 鍍膜員工述職報(bào)告
- 春節(jié)期間化工企業(yè)安全生產(chǎn)注意安全生產(chǎn)
- 保險(xiǎn)行業(yè)加強(qiáng)清廉文化建設(shè)
- Hive數(shù)據(jù)倉(cāng)庫(kù)技術(shù)與應(yīng)用
- 數(shù)字的秘密生活:最有趣的50個(gè)數(shù)學(xué)故事
評(píng)論
0/150
提交評(píng)論