

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 微型計(jì)算機(jī)原理課程設(shè)計(jì)報(bào)告</p><p><b> 一、目的</b></p><p> 結(jié)合微型計(jì)算機(jī)原理課程的學(xué)習(xí),進(jìn)一步鞏固已學(xué)的知識(shí),同時(shí)針對(duì)微型計(jì)算機(jī)原理知識(shí)的具體應(yīng)用,學(xué)會(huì)對(duì)系統(tǒng)中DOS和BIOS的使用。學(xué)會(huì)使用全屏幕編輯程序——PE,弄懂匯編程序的上機(jī)過(guò)程以及如何運(yùn)用DEBUG軟件進(jìn)行匯編程序的調(diào)試。</p>&l
2、t;p><b> 二、任務(wù)</b></p><p> 任務(wù)一:字符串匹配設(shè)計(jì)</p><p> 為掌握提示信息的設(shè)置方法及讀取鍵入信息的方法。編寫(xiě)程序?qū)崿F(xiàn)兩個(gè)字符串的比較。如相同,則顯示“MATCH”,否則,顯示“NO MATCH”</p><p><b> 流程圖:</b></p><p
3、><b> 程序清單:</b></p><p> data segment</p><p> s1 db 'please input the first string:','$'</p><p> st1 db 100</p><p><b> db ?
4、</b></p><p> db 100 dup(?)</p><p> s2 db 0ah,'plaese input the second string:','$'</p><p> st2 db 100</p><p><b> db ?</b>&l
5、t;/p><p> db 100 dup(?)</p><p> s3 db 0ah,'matah','$'</p><p> s4 db 0ah,'no mactch','$'</p><p><b> data ends</b><
6、/p><p> code segment</p><p> assume cs:code,ds:data</p><p> start: mov ax,data</p><p><b> mov ds,ax</b></p><p> mov dx,offset s1 ;顯示提
7、示信息1</p><p> mov ah,9h ;字符串顯示</p><p><b> int 21h</b></p><p> mov dx,offset st1 ;接收鍵入的字符串1</p><p> mov ah,0ah ;字符串鍵盤輸
8、入</p><p><b> int 21h</b></p><p> mov dx,offset s2 ; 顯示提示信息2</p><p> mov ah,9h </p><p><b> int 21h</b></p><
9、;p> mov dx,offset st2 ;接收鍵入的字符串2</p><p> mov ah,0ah</p><p><b> int 21h</b></p><p> mov si,offset st1 ; 字符串1的地址送給SI</p><p> mov di,offs
10、et st2 ; 字符串2的地址送給DI</p><p><b> mov ax,0</b></p><p> lp1: mov bl,[si+1] ;字符串1的字符數(shù)送給bl</p><p> cmp bl,[di+1] ;字符串2的字符數(shù)與字符串1相比較</p>
11、<p> jnz lp4 ; 不等轉(zhuǎn)lp4</p><p> mov al,[si+1] </p><p> mov cx,ax ;給cx賦字符串1的字符數(shù)</p><p> lp2: mov bl,[si+2] ; 字符串1的第一個(gè)字符在字符串2中
12、匹配</p><p> cmp bl,[di+2]</p><p><b> jnz lp4</b></p><p><b> inc si</b></p><p><b> inc di</b></p><p> loop lp2
13、 ; 循環(huán)cx內(nèi)容減1,cx不等于0,繼續(xù)循環(huán),跳轉(zhuǎn)lp2 </p><p> lp3: mov dx,offset s3 </p><p><b> mov ah,9h</b></p><p><b> int 21h</b></p><p><b>
14、 jmp next</b></p><p> lp4: mov dx,offset s4</p><p><b> mov ah,9h</b></p><p><b> int 21h</b></p><p> next: mov ah,4ch
15、;返回DOS</p><p><b> int 21h</b></p><p><b> code ends</b></p><p> end start </p><p><b> 調(diào)試結(jié)果:</b></p><p> 任務(wù)二:從鍵盤輸入數(shù)據(jù)
16、并顯示的設(shè)計(jì)</p><p> 為掌握接收鍵盤數(shù)據(jù)的方法,并了解將鍵盤數(shù)據(jù)顯示時(shí)須轉(zhuǎn)換為ASCII碼的原理。編寫(xiě)程序,將鍵盤接收到的四位十六進(jìn)制數(shù)據(jù)轉(zhuǎn)換為等值的二進(jìn)制數(shù),再顯示在終端上。</p><p><b> 流程圖:</b></p><p><b> 程序清單: </b></p><p>
17、; CRLF MACRO</p><p> MOV AH,02H</p><p> MOV DL,0DH</p><p><b> INT 21H</b></p><p> MOV AH,02H</p><p> MOV DL,0AH</p><p>
18、;<b> INT 21H</b></p><p><b> ENDM</b></p><p> DATA SEGMENT</p><p> MARK DB ?</p><p> MESS DB 'please input the number(H),press inte
19、r,ture into number(B).press space end.',0DH,0AH,'$'</p><p> ERROR DB 0DH,0AH, 'input error',0DH,0AH,'$'</p><p> DATA ENDS</p><p> STACK SEGMENT<
20、/p><p> STA DW 32 DUP(?)</p><p> TOP DW ?</p><p> STACK ENDS</p><p> CODE SEGMENT</p><p> ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK</p><
21、p> START: MOV AX,DATA</p><p> MOV DS,AX</p><p> MOV ES,AX</p><p> MOV SP,TOP</p><p> HEAD: CRLF</p><p> MOV MARK,0</p><p> M
22、OV AH,09H</p><p> LEA DX,MESS</p><p> INT 21H ;顯示提示輸入的信息</p><p> CALL GETNUM ;接收鍵入數(shù)值送DX</p><p> CMP MARK,01H</p><p><b> J
23、E HEAD</b></p><p> MOV CX,0010H ;16位</p><p> MOV BX,DX</p><p> TTT: ROL BX,1 ;循環(huán)左移1位</p><p> MOV DL,BL</p><p> AND DL
24、,01H ;屏蔽掉高7位</p><p> ADD DL,30H</p><p> MOV AH,02H</p><p> INT 21H ;顯示二進(jìn)制位對(duì)應(yīng)的ASCII字符</p><p><b> LOOP TTT</b></p><p>
25、 JMP HEAD</p><p> FINI: MOV AX,4C00H</p><p> INT 21H ;返回DOS</p><p> GETNUM PROC NEAR ;子程序,接收鍵入數(shù)值送DX</p><p><b> PUSH CX</b
26、></p><p> XOR DX,DX</p><p> GGG: MOV AH,01H</p><p><b> INT 21H</b></p><p> CMP AL,0DH ;輸入為回車,則進(jìn)行轉(zhuǎn)換</p><p><b> JE
27、 PPP</b></p><p> CMP AL,20H ;輸入為空格,則退回DOS</p><p><b> JE FINI</b></p><p> CMP AL,30H</p><p><b> JB KKK</b></p>
28、<p> SUB AL,30H</p><p> CMP AL,0AH</p><p><b> JB GETS</b></p><p> CMP AL,11H</p><p><b> JB KKK</b></p><p> SUB AL
29、,07H</p><p> CMP AL,0FH</p><p> JBE GETS </p><p> CMP AL,2AH</p><p><b> JB KKK</b></p><p> CMP AL,2FH</p><p>&
30、lt;b> JA KKK</b></p><p> SUB AL,20H</p><p> GETS: MOV CL,04</p><p> SHL DX,CL</p><p> XOR AH,AH</p><p> ADD DX,AX</p><p&
31、gt;<b> JMP GGG</b></p><p> KKK: MOV AH,09H</p><p> MOV DX,OFFSET ERROR</p><p><b> INT 21H</b></p><p> MOV MARK,01H</p><p
32、> PPP: PUSH DX</p><p><b> CRLF</b></p><p><b> POP DX</b></p><p><b> POP CX</b></p><p><b> RET</b></p>
33、;<p> GETNUM ENDP</p><p> CODE ENDS</p><p><b> END START</b></p><p><b> 調(diào)試結(jié)果:</b></p><p> 任務(wù)三:將鍵盤輸入的小寫(xiě)字母轉(zhuǎn)換成大寫(xiě)字母的設(shè)計(jì)</p><
34、;p> 為了解小寫(xiě)字母和大寫(xiě)字母在計(jì)算機(jī)內(nèi)的表示方法,并學(xué)習(xí)如何進(jìn)行轉(zhuǎn)換。編寫(xiě)程序,接收鍵盤字符,并將其中的小寫(xiě)字母轉(zhuǎn)變?yōu)榇髮?xiě)字母,然后顯示在屏幕上。</p><p><b> 流程圖:</b></p><p><b> 程序清單:</b></p><p> DATA SEGMENT
35、 </p><p> BUF DB 82 DUP(?) </p><p> DISPP1 DB 'please input letters, end with enter, exit with ctrl-c',0DH,0AH,'$'</p><p> DISPP2 DB '
36、;the inverted litter is:', 0DH, 0AH,'$' </p><p> DISPP3 DB 0DH,0AH,'$'</p><p> DATA ENDS </p><p> CODE SEGMENT</p><p> ASSUME CS:CODE,DS:
37、DATA,ES:DATA</p><p> START: MOV AX,DATA</p><p><b> MOV DS,AX</b></p><p> MOV ES,AX ;段寄存器初始化</p><p> MOV BX,OFFSET BUF ;BX
38、指向字符行緩沖區(qū)首址</p><p> LEA DX,DISPP1</p><p><b> MOV AH,9</b></p><p><b> INT 21H</b></p><p> KKK: MOV SI,00H ;指針SI清0</p&g
39、t;<p> GGG: MOV AH,01H ;接收鍵入字符</p><p> INT 21H </p><p> CMP AL,03H</p><p> JZ PPP ;是CTRL-C鍵則轉(zhuǎn)結(jié)束 </p
40、><p> CMP AL,0DH</p><p> JZ BBB ;是回車鍵則轉(zhuǎn)BBB</p><p> CMP AL,61H</p><p><b> JB TTT</b></p><p> CMP AL,7AH</p><
41、;p> JA TTT ;不是小寫(xiě)字母轉(zhuǎn)TTT</p><p> SUB AL,20H ;小寫(xiě)字母轉(zhuǎn)化為大寫(xiě)字母</p><p> TTT: MOV [BX+SI],AL ;存入字符行緩沖區(qū)中</p><p> INC SI
42、 ;指針加1</p><p><b> JMP GGG</b></p><p> BBB: LEA DX,DISPP3</p><p><b> MOV AH,9</b></p><p><b> INT 21H</b></p>
43、;<p> LEA DX,DISPP2</p><p><b> MOV AH,9</b></p><p><b> INT 21H</b></p><p> MOV [BX+SI],AL </p><p> MOV AL,0AH</p>
44、<p> MOV [BX+SI+1],AL ;加入換行符</p><p> MOV AL,'$' </p><p> MOV [BX+SI+2],AL ;再加一個(gè)'$'標(biāo)志字符</p><p> MOV AH,09H</p><p>&
45、lt;b> MOV DX,BX</b></p><p> INT 21H ;顯示轉(zhuǎn)換后的字符串 </p><p><b> JMP KKK</b></p><p> PPP: MOV AH,4CH</p><p&g
46、t;<b> INT 21H</b></p><p> CODE ENDS</p><p> END START</p><p> CODE ENDS</p><p> END START</p><p><b> 調(diào)試結(jié)果:</b></
47、p><p> 任務(wù)四:計(jì)算N!的設(shè)計(jì)</p><p> 為了解高級(jí)語(yǔ)言中的數(shù)學(xué)函數(shù)是怎樣在匯編語(yǔ)言一級(jí)上實(shí)現(xiàn)的。編寫(xiě)計(jì)算N!的程序。數(shù)值N由鍵盤輸入,結(jié)果在屏幕上輸出。N的范圍為0—65535.即剛好能被一個(gè)16為位寄存器容納。</p><p><b> 流程圖:</b></p><p><b> 程序清單
48、:</b></p><p> CRLF MACRO;回車,換行</p><p> MOV AH, 02H</p><p> MOV DL, 0DH</p><p><b> INT 21H</b></p><p> MOV AH, 02H</p>
49、<p> MOV DL, 0AH</p><p><b> INT 21H</b></p><p><b> ENDM</b></p><p> DATA SEGMENT</p><p> MESS1 DB 'INPUT THE NUMBER ACCORDING
50、TO HEXNUM!',0DH,0AH,'$'</p><p> MESS2 DB 'THE RESULT IS: $'</p><p> ERROR DB 'INPUT ERROR! INPUT ONCE MORE!',0DH ,0AH,'$'</p><p> LEN D
51、W 1</p><p> CY DW ?</p><p> BUF DW 256 DUP(0)</p><p> DATA ENDS</p><p> STACK SEGMENT STACK 'STACK'</p><p> DW 32 DUP(?)</p>
52、<p> STACKENDS</p><p> CODE SEGMENT</p><p> ASSUME CS: CODE, DS:DATA, ES:DATA, SS:STACK</p><p> START:MOV AX, DATA</p><p><b> MOV DS,AX</b>&l
53、t;/p><p> MOV ES, AX</p><p> MOV AH, 09H</p><p> MOV DX,OFFSET MESS1</p><p> INT 21H ;顯示輸入提示信息</p><p> CALL GETNUM ;讀取鍵入的N
54、值</p><p> MOV BP, DX ;N值送BP</p><p><b> CMP BP, 0</b></p><p><b> JZ EEE</b></p><p><b> CMP BP, 1</b></p>
55、<p> JZ EEE ;N=0或N=1則轉(zhuǎn)EEE</p><p> MOV SI, OFFSET BUF ;緩沖區(qū)首址</p><p> MOV [SI],DX ;緩沖區(qū)初始化為值N</p><p> XXX: DEC BP
56、 ;N值減1</p><p> CMP BP,0001H</p><p> JZ LLL ;若為1則轉(zhuǎn)LLL</p><p> XOR BX,BX ;偏移指針清0</p><p> MOV WORD PTR CY,0 ;進(jìn)位單元清0</p>
57、;<p> MOV CX,LEN ;當(dāng)前結(jié)果長(zhǎng)度送CX</p><p> TTT: MOV AX, [SI+BX]</p><p> MUL BP ;相乘</p><p> ADD AX,CY ;加低位進(jìn)位</p><p> JNC
58、 JJJ ;結(jié)果無(wú)進(jìn)位轉(zhuǎn)JJJ</p><p> INC DX ;有進(jìn)位將高位單元加1</p><p> JJJ: MOV [SI+BX],AX ;結(jié)果送緩沖區(qū)中</p><p> MOV CY,DX ;高位單元送進(jìn)位單元</p>
59、<p><b> INC BX</b></p><p> INC BX ;一個(gè)字長(zhǎng)度</p><p> LOOP TTT ;循環(huán)</p><p> CMP DX, 0000H</p><p> JZ BBB
60、;最后1次的進(jìn)位為0則轉(zhuǎn)BBB</p><p> INC WORD PTR LEN ;長(zhǎng)度加1</p><p> MOV [SI+BX],DX ;進(jìn)位送緩沖區(qū)中</p><p> BBB: JMP XXX</p><p> EEE: MOV SI,OFFSET BUF</p><p&
61、gt; MOV WORD PTR [SI],1 ;結(jié)果為1</p><p> LLL: MOV AH, 09H</p><p> MOV DX,OFFSET MESS2</p><p> INT 21H ;顯示表頭</p><p> MOV CX,LEN</p><p>
62、; MOV BX,CX ;長(zhǎng)度</p><p><b> DEC BX</b></p><p> SHL BX,1 ;1個(gè)字為兩個(gè)字節(jié)</p><p> CCC: MOV AX, [SI+BX]</p><p><b> CALL DISP&l
63、t;/b></p><p><b> DEC BX</b></p><p> DEC BX ;顯示結(jié)果</p><p><b> LOOP CCC</b></p><p> MOV AX,4C00H ;結(jié)束</p>&
64、lt;p><b> INT 21H</b></p><p> DISP1 PROC NEAR ;顯示字符(AL)</p><p> MOV BL, AL</p><p> MOV DL, BL</p><p> MOV CL, 04</p><p>
65、 ROL DL, CL</p><p> AND DL, 0FH</p><p> CALL DISPL ;顯示高位</p><p> MOV DL, BL </p><p> AND DL, 0FH</p><p> CALL DISPL ;顯示低位<
66、/p><p><b> RET</b></p><p> DISP1 ENDP</p><p> DISPL PROC NEAR ;顯示一位(DL=0XH)</p><p> ADD DL, 30H</p><p> CMP DL, 3AH</p>
67、<p><b> JB DDD</b></p><p> ADD DL, 27H</p><p> DDD: MOV AH, 02H</p><p><b> INT 21H</b></p><p><b> RET</b></p><
68、;p> DISPL ENDP</p><p> DISP PROC NEAR ;顯示4位數(shù)(HEX)</p><p><b> PUSH BX</b></p><p><b> PUSH CX</b></p><p><b> PUSH DX
69、</b></p><p><b> PUSH AX</b></p><p> MOV AL, AH</p><p> CALL DISP1</p><p><b> POP AX</b></p><p> CALL DISP1</p>&l
70、t;p><b> POP DX</b></p><p><b> POP CX</b></p><p><b> POP BX</b></p><p><b> RET</b></p><p> DISP ENDP</p>
71、<p> GETNUMPROC NEAR ;字符匹配程序</p><p><b> PUSH CX</b></p><p> REGET:XOR DX, DX</p><p> GGG: MOV AH, 01H</p><p><b> INT 2
72、1H</b></p><p> CMP AL, 0DH</p><p><b> JZ PPP</b></p><p> CMP AL, 20H</p><p><b> JZ PPP</b></p><p> SUB AL, 30H</p>
73、<p><b> JB KKK</b></p><p> CMP AL, 0AH</p><p><b> JB GETS</b></p><p> CMP AL,11H</p><p><b> JB KKK</b></p><p&
74、gt; SUB AL, 07H</p><p> CMP AL, 0FH</p><p><b> JBE GETS</b></p><p> CMP AL, 2AH</p><p><b> JB KKK</b></p><p> CMP AL, 2FH<
75、/p><p><b> JA KKK</b></p><p> SUB AL, 20H</p><p> GETS: MOV CL, 04H</p><p><b> SHL DX,CL</b></p><p> XOR AH, AH</p><p
76、> ADD DX ,AX</p><p><b> JMP GGG</b></p><p> KKK: CRLF</p><p> MOV AH, 09H</p><p> MOV DX,OFFSET ERROR</p><p><b> INT 21H</b
77、></p><p><b> JMP REGET</b></p><p> PPP: PUSH DX</p><p><b> CRLF</b></p><p><b> POP DX</b></p><p><b> POP
78、 CX</b></p><p><b> RET</b></p><p> GETNUMENDP </p><p> CODE ENDS</p><p><b> END START</b></p><p><
79、b> 調(diào)試結(jié)果:</b></p><p> 任務(wù)五:讀文件的設(shè)計(jì)</p><p> 為掌握讀文件的DOS功能調(diào)用方法。編寫(xiě)程序,使它相當(dāng)于TYPE命令的功能。先由屏幕顯示提示信息,再讀取文件名(含路徑),然后在屏幕上顯示文件內(nèi)容。</p><p><b> 流程圖:</b></p><p>&l
80、t;b> 程序清單:</b></p><p> DATA SEGMENT</p><p> FILEN DB 21 ;文件名允許長(zhǎng)度為20</p><p> DB ? ;實(shí)際文件名長(zhǎng)度</p><
81、;p> DB 20 DUP(?) ;存新文件名</p><p> ERROP DB 'Open file error!',0AH,0DH,'$'</p><p> ERRRD DB 'Read file error!',0AH,0DH,'
82、$'</p><p> INMSG1 DB 'Please input filename:',0AH,0DH,'$'</p><p> BUFIN DB 0F000H DUP(?)</p><p> EOF EQU 1AH ;文件結(jié)束
83、符CTRL+Z</p><p> DATA ENDS</p><p> CODE SEGMENT</p><p> ASSUME CS:CODE,DS:DATA</p><p> START: MOV AX,DATA</p><p> MOV DS,AX</p>
84、;<p> LEA DX,INMSG1 ;顯示要求輸入打開(kāi)的文件名信息</p><p> MOV AH,09H</p><p> INT 21H</p><p> LEA DX,FILEN ;輸入文件名</p>&l
85、t;p> MOV AH,0AH</p><p> INT 21H</p><p> MOV BL,FILEN+1 ;取文件長(zhǎng)度</p><p> MOV BH,0</p><p> MOV FILEN[BX+2],BYTE PTR
86、0 ;文件名末尾添加0</p><p> LEA DX,FILEN+2 ;指向文件名</p><p> MOV AL,0 ;以只讀方式打開(kāi)</p><p> MOV AH,3DH ;打開(kāi)文件&l
87、t;/p><p> INT 21H</p><p> JC OPERR ;打開(kāi)出錯(cuò) ,轉(zhuǎn)OPERR</p><p> MOV BX,AX ;轉(zhuǎn)存文件號(hào)</p><p> RDFILE: LEA
88、DX,BUFIN ;DX指向緩沖區(qū)</p><p> MOV CX,50H ;每次讀80個(gè)字節(jié)</p><p> MOV AH,3FH ;讀文件</p><p> INT 21H</p><p>
89、JC RDERR ;讀出錯(cuò),轉(zhuǎn)RDERR</p><p> OR AX,AX ;讀入的字節(jié)數(shù)是否為0</p><p> JZ CLFILE ;若為0,轉(zhuǎn)CLFILE</p><p> MOV
90、 DL,0DH ;輸出回車</p><p> MOV AH,2</p><p> INT 21H</p><p> MOV DL,0AH ;輸出換行,準(zhǔn)備顯示文件內(nèi)容</p><p> MOV
91、 AH,2</p><p> INT 21H</p><p> MOV SI,0</p><p> DISP0: MOV AL,BUFIN[SI] ;從緩沖區(qū)送一個(gè)字節(jié)到AL</p><p> CMP AL,EOF ;是否為文件
92、結(jié)束符</p><p> JZ CLFILE ;若是,轉(zhuǎn)CLFILE</p><p> MOV DL,AL ;顯示一個(gè)字符</p><p> MOV AH,2</p><p> INT 21H<
93、/p><p> INC SI ;指向下一個(gè)字節(jié)</p><p> LOOP DISP0</p><p> JMP RDFILE ;再去讀50H個(gè)字節(jié)</p><p> RDERR: LEA DX,ER
94、RRD ;顯示讀文件出錯(cuò)的信息</p><p> JMP DISP1 </p><p> OPERR: LEA DX,ERROP ;顯示打開(kāi)文件出錯(cuò)的信息</p><p> DISP1: MOV AH,09H</p><p> INT 21H
95、</p><p> JMP ENDO</p><p> CLFILE: MOV AH,3EH ;關(guān)閉文件</p><p> INT 21H</p><p> ENDO: MOV AH,4CH ;退出</p><p&
96、gt; INT 21H</p><p> CODE ENDS</p><p> END START</p><p><b> 調(diào)試結(jié)果:</b></p><p><b> 任務(wù)六:響鈴設(shè)計(jì)</b></p><p> 為掌握響鈴的使用方法。
97、編寫(xiě)程序,從鍵盤接收輸入字符,如是數(shù)字N,則響鈴N次;如不是數(shù)字,則不響。</p><p><b> 流程圖:</b></p><p><b> 程序清單:</b></p><p> CRLF MACRO </p><p> MOV DL,0DH</p>
98、<p> MOV AH,02H</p><p> INT 21H </p><p> MOV AH,02H</p><p> MOV DL,0AH</p><p> INT 21H</p><p><b> ENDM</b></p>
99、;<p> DATA SEGMENT</p><p> MES DB 'Please Input A Number,Press C To Exit:','$'</p><p> MES1 DB 'The Input Is Not A Number,Please Input Again:','$
100、9;</p><p> DATA ENDS</p><p> CODE SEGMENT</p><p> ASSUME CS:CODE,DS:DATA</p><p> START: MOV AX,DATA</p><p><b> MOV DS,AX</b></
101、p><p> MOV DX, OFFSET MES </p><p> MOV AH,09H</p><p><b> INT 21H</b></p><p><b> CRLF</b></p><p> L3: MOV AH,01H
102、 </p><p><b> INT 21H</b></p><p> CMP AL,'C'</p><p><b> JE EXIT </b></p><p> CMP AL,30H </p><p><b> JB L2
103、</b></p><p> CMP AL,39H</p><p><b> JA L2</b></p><p> AND AL,0FH </p><p><b> CMP AL,0</b></p><p><b> JE EXIT
104、</b></p><p><b> MOV BL,AL</b></p><p> L1: MOV DL,07H </p><p> MOV AH,02H</p><p><b> INT 21H</b></p><p> CALL
105、 DELAY</p><p><b> DEC BL</b></p><p> JNZ L1 </p><p><b> JMP L3</b></p><p><b> CRLF</b></p><p>
106、; EXIT: MOV AH,4CH</p><p><b> INT 21H</b></p><p> L2: CRLF</p><p> MOV DX, OFFSET MES1 </p><p> MOV AH,09H</p><p><b
107、> INT 21H</b></p><p><b> JMP L3</b></p><p> DELAY PROC NEAR</p><p> MOV DX ,02FFFH</p><p> K2: MOV AX,0FFFFH</p><p&g
108、t; K1: DEC AX</p><p><b> NOP</b></p><p> JNZ K1 </p><p><b> DEC DX</b></p><p><b> JNZ K2 </b></p
109、><p> RET </p><p> DELAY ENDP</p><p> CODE ENDS</p><p> END START</p><p><b> 調(diào)試結(jié)果:</b></p><p>&l
110、t;b> 三、小結(jié)</b></p><p> 通過(guò)這短短五天的課程設(shè)計(jì),我收獲很多。首先,匯編語(yǔ)言是上個(gè)學(xué)期學(xué)習(xí)的,過(guò)了半年多了,很多東西都忘記了,現(xiàn)在著手來(lái)編寫(xiě)一段程序,真的是很困難,連最起碼的指令都記不全。但是,經(jīng)過(guò)這幾天的不斷復(fù)習(xí),回顧以前學(xué)過(guò)的東西,慢慢的,對(duì)其熟悉程度也提升了,能從什么都不會(huì),慢慢的開(kāi)始的編寫(xiě)簡(jiǎn)單的程序了,會(huì)用軟件對(duì)程序進(jìn)行調(diào)試,能解決常見(jiàn)的錯(cuò)誤。其次,我最大的感觸
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 微型計(jì)算機(jī)課程設(shè)計(jì)--數(shù)據(jù)采集系統(tǒng)
- 微型計(jì)算機(jī)課程設(shè)計(jì)---數(shù)字錄音機(jī)
- 單片微型計(jì)算機(jī)課程設(shè)計(jì)報(bào)告-多功能電子數(shù)字鐘
- 微型計(jì)算機(jī)應(yīng)用系統(tǒng)的課程設(shè)計(jì)報(bào)告
- 計(jì)算機(jī)課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)--微型計(jì)算機(jī)系統(tǒng)設(shè)計(jì)
- 計(jì)算機(jī)課程設(shè)計(jì)
- vf計(jì)算機(jī)課程設(shè)計(jì)
- 計(jì)算機(jī)課程設(shè)計(jì)---冒泡排序
- 微型計(jì)算機(jī)課程設(shè)計(jì)--設(shè)計(jì)并實(shí)現(xiàn)隨音樂(lè)伴奏而按某種規(guī)律顯示的彩燈
- 微型計(jì)算機(jī)接口技術(shù)課程設(shè)計(jì)---雙機(jī)通信
- 計(jì)算機(jī)課程設(shè)計(jì)----銷售管理系統(tǒng)
- 微型計(jì)算機(jī)基于8086cup數(shù)字時(shí)鐘課程設(shè)計(jì)任務(wù)
- 微型計(jì)算機(jī)控制技術(shù)課程設(shè)計(jì)報(bào)告---電磁智能車舵機(jī)控制
- 單片微型計(jì)算機(jī)原理與接口技術(shù)課程設(shè)計(jì)報(bào)告——溫度測(cè)量
- 計(jì)算機(jī)課程設(shè)計(jì)--人事管理系統(tǒng)
- 微型計(jì)算機(jī)控制技術(shù)課程設(shè)計(jì)---步進(jìn)電機(jī)角度控制
- 計(jì)算機(jī)課程設(shè)計(jì)----實(shí)用網(wǎng)絡(luò)考試系統(tǒng)
- 《微型計(jì)算機(jī)技術(shù)》課程設(shè)計(jì)--交通燈控制系統(tǒng)
- 微型計(jì)算機(jī)技術(shù)課程設(shè)計(jì)--模擬電壓采集電路設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論