江苏大学微机原理课程设计

上传人:平*** 文档编号:14504344 上传时间:2017-11-01 格式:DOCX 页数:26 大小:116.49KB
返回 下载 相关 举报
江苏大学微机原理课程设计_第1页
第1页 / 共26页
江苏大学微机原理课程设计_第2页
第2页 / 共26页
江苏大学微机原理课程设计_第3页
第3页 / 共26页
江苏大学微机原理课程设计_第4页
第4页 / 共26页
江苏大学微机原理课程设计_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《江苏大学微机原理课程设计》由会员分享,可在线阅读,更多相关《江苏大学微机原理课程设计(26页珍藏版)》请在金锄头文库上搜索。

1、江苏大学电气信息工程学院微机原理课程设计附件下载地址: http:/ SEGMENTTHEME1 DB 0DH,0AH,0DH,0AH,=WHAT IS THE DATA(MM/DD/YY)?=,0DH,0AH,$THEME2 DB =PLEASE INPUT MONTH,DAY ,YEAR(MM/DD/YY),END WITH Esc!=,0DH,0AH,$M_ERROR DB 0DH,0AH,!MONTH ERROR!PLEASE INPUT AGAIN,0DH,0AH,$ D_ERROR DB 0DH,0AH,!DAY ERROR!PLEASE INPUT AGAIN,0DH,0AH,$

2、ERROR DB 0DH,0AH,!ERROR!PLEASE INPUT AGAIN,0DH,0AH,$POINT DB 0DH,0AH,THE DATA IS:,$POINT_M DB 0DH,0AH,PLEASE INPUT THE NUMBER OF MONTH:,$POINT_D DB 0DH,0AH,PLEASE INPUT THE NUMBER OF DAY:,$POINT_Y DB 0DH,0AH,PLEASE INPUT THE NUMBER OF YEAR:,$BUFF DW 4 DUP(?)MARK DB ?DATA ENDSCODE SEGMENTASSUME CS:CO

3、DE,DS:DATASTART: MOV AX, DATAMOV DS, AXMOV SI, 0LEA DX, THEME1MOV AH, 9INT 21HMOV AH,02HMOV DL,07HINT 21H LEA DX, THEME2MOV AH, 9INT 21HJMP INPUT_MNEW_M: MOV AH,02HMOV DL,07HINT 21H MOV AH, 9LEA DX, M_ERRORINT 21H INPUT_M: LEA DX, POINT_MMOV AH, 9INT 21HMOV MARK,0CALL GETNUMCMP MARK,1JZ NEW_MMOV AX,

4、BUFFSI-1AND AX,00FFHCMP AX,0012HJBE L1DEC SIJMP NEW_ML1: CALL HuanHangJMP INPUT_DNEW_D: MOV AH,02HMOV DL,07HINT 21HMOV AH, 9LEA DX, D_ERRORINT 21H INPUT_D: LEA DX, POINT_DMOV AH, 9INT 21HMOV MARK,0CALL GETNUMCMP MARK,1JZ NEW_DMOV AX,BUFFSI-1AND AX,00FFHCMP AX,0031HJBE L2DEC SIJMP NEW_DL2: CALL HuanH

5、angINPUT_Y: MOV AH, 9LEA DX, POINT_Y INT 21HMOV MARK,0CALL GETNUMCMP MARK,1JZ INPUT_YCALL HuanHangLEA DX,POINTMOV AH,9INT 21HMOV AX,BUFF2CALL DISP4MOV AH,02HMOV DL,-INT 21HMOV AX,BUFF0CALL DISP2MOV AH,02HMOV DL,-INT 21HMOV AX,BUFF1CALL DISP2CALL HuanHangJMP START DISP4 PROC NEARPUSH AXMOV AL,AHCALL

6、DISP2POP AXCALL DISP2RET DISP4 ENDPDISP2 PROC NEARMOV BL,ALMOV DL,BLMOV CL,04ROL DL,CLAND DL,0FHCALL DISP1MOV DL,BLAND DL,0FHCALL DISP1RETDISP2 ENDPDISP1 PROC NEARADD DL,30HCMP DL,3AHJB DDDADD DL,27HDDD: MOV AH,02HINT 21HRETDISP1 ENDPGETNUM PROC NEARMOV DX, 0AGAIN: MOV AH, 01HINT 21HCMP AL,1BHJZ EXI

7、TCMP AL, 0DHJZ LP1SUB AL, 30HCMP AL, 0JB LP2CMP AL, 9JA LP2MOV CL, 4SHL DX, CLXOR AH, AHADD DX, AXJMP AGAINLP1: MOV AX, DXMOV BUFFSI,AXINC SILP3: RETLP2: LEA DX, ERRORMOV AH, 9INT 21HMOV MARK,1CALL HuanHangJMP LP3RETGETNUM ENDPHuanHang PROC NEARMOV AH, 2MOV DL, 0DHINT 21MOV AH,02HMOV DL,0AHINT 21HRE

8、THuanHang ENDPEXIT: MOV AH, 4CHINT 21HCODE ENDSEND START2、输入字符并显示的那题:DATA SEGMENTTITTLE DB 0DH,0AH,0DH,0AH,0DH,0AH,!PLEASE INPUT 1F!,0DH,0AH,QUIT WITH Esc0DH,0AH,$MSG1 DB 0DH,0AH, Hex:,$MSG2 DB 0DH,0AH,Binary:,$BUF DB 4 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX, DATAMOV DS, AXLE

9、A DX, TITTLEMOV AH, 9INT 21HLEA DX, MSG1;MOV AH, 9;INT 21HMOV CX, 4MOV SI, 0INPUT: MOV AH, 1;通过四次循环从键盘读入四位十六进制数INT 21HCMP AL, 1BH;Esc 键的 ASCII 码JZ EXITMOV BUFSI, AL INC SILOOP INPUTLEA DX, MSG2MOV AH, 9INT 21HMOV CX, 4MOV SI, 0NEXT: MOV BL, BUFSICMP BL, 39H JBE LP2;读入的字符9 转向 OKSUB BL, 7;读入字符= 9 减 7L

10、P2: AND BL, 0FHPUSH CX MOV CL, 4 SHL BL, CL;逻辑左移 4 位,低 4 位 高 4 位MOV CX, 4LP1: SHL BL, 1;逻辑左移 1 位,最高位进入 CFMOV DL, 30HADC DL, 0;用到 CF,转换为 ASCII 码MOV AH, 2INT 21HLOOP LP1POP CXINC SILOOP NEXTMOV AH, 2MOV DL, B;显示二进制表示符BINT 21HJMP STARTEXIT: MOV AH, 4CHINT 21HCODE ENDSEND START3、小写字符转换为大写字符:DATA SEGMENT

11、DISPP1 DB 0AH,_Wrong Word!Please Input Again!0DH,0AH,$DISPP2 DB 0DH,0AH,$DISPP3 DB Please Input A Character,End With Esc,0DH,0AH,$BUFF1 DB 50 DUP(?);!BUFF2 DB 50 DUP(?);!DATA ENDS;代码段CODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX, DATAMOV DS, AXLEA SI, BUFF1LEA DI, BUFF2L2: LEA DX, DISPP3MOV AH,9;

12、9 号功能调用可实现将字符串在屏幕上显示出来,INT 21H;要求:DS:DX 指向字符串地址的首址,并且字符串必须以$为结束符AGAIN: MOV AH, 1;1 号功能,单个字符从键盘输入到 AL 寄存器,并在屏幕上显示出来INT 21H;MOV BL, AL;暂存;MOV DL, _;MOV AH, 02H;INT 21H;MOV DL, _;写与不写区别不大;MOV AH, 02H;2 号功能调用,单个字符显示,把要显示的字符的ASCII 码送 DL 寄存器;INT 21H;MOV AL, BL;取出MOV SI, ALINC SICMP AL, 0DHJZ DISPLAYCMP AL

13、, 1BH;Esc 键的 ASCII 码JZ OVERCMP AL, a;CMP 是比较指令,功能是目的操作数减去源操作数,但不送回相减的结果,只是使结果影响标志位JB L1CMP AL, zJA L1SUB AL, 20H;小写字母向大写字母转换MOV DI, ALINC DIJMP AGAIN;MOV AH, 2;2 号功能调用,单个字符显示,把要显示的字符的 ASCII码送 DL 寄存器;INT 21H;LEA DX, DISPP2;回车并换行;MOV AH, 9;9 号功能调用可实现将字符串在屏幕上显示出来,;INT 21H;要求:DS:DX 指向字符串地址的首址,并且字符串必须以$为结束符;LEA DX, DISPP2 ;MOV AH, 9;INT 21H;JMP START;循环L1:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号