汇编语言与微机原理综合性实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
综合性实验报告
2012-2013-1
课程名称:《汇编语言与微机原理》班级:10级计算机(1)班
学号:**********
*名:***
实验项目:基于DOS系统功能调用、串处理指令的用户管理实验
1 实验目的与要求:
通过本综合性实验,可以达到以下目的:
1、掌握内存中数据的存储与管理方法;
2、掌握使用DOS系统功能调用的方法进行程序设计的三个基本步骤;
3、掌握使用DOS系统功能调用进行字符串显示与录入、存储的程序设计;
4、掌握字符串处理指令的功能、格式及使用方法;
5、掌握使用汇编语言进行程序设计、调试的方法。
2 实验内容:
1、进行子程序设计,功能为:
(1)调用DOS系统功能进行字符串录入提示;并对用户根据提示输入的用户名进行存储;(2)系统自动匹配录入用户名与预设用户名,若相同,则提示“ENTER THE SYSTEM….”,否则,提示“REFUSED TO ENTER!”。
2、调用DOS系统21H中断的25H号功能,将此子程序的入口地址写入中断矢量表,中断矢
量号定义为60H。
3、定义主程序,功能如下:
(1)在数据存储区域预设用户名;
(2)使用INT 60H中断指令进行中断调用;
4、调试、执行程序并记录调试结果。
3 实验过程(要求在实验报告中写出全部代码,并提交纸质实验报告和电子文档,电子文档为实验报告、源代码、obj、exe文件的压缩包)
参考过程如下:
1、进入DOS操作系统;
2、键入EDIT 进入全屏幕编辑环境;
3、建立源文件.ASM 并保存;
4、返回DOS系统;
5、用汇编程序MASM对源文件汇编产生目标文件.OBJ;
6、用链接程序LINK产生执行文件.EXE;
7、执行程序;
8、进入DEBUG,进行程序功能调试的方法。
完整源代码如下:
DATA SEGMENT
WAITFINPUT DB 100
DB ?
DB 100 DUP(?)
USER_NAME DB "BRUTH"
MESG DB "PLEASE INPUT THE USERS' NAME(=5):$"
WEL DB "ENTER THE SYSTEM...$"
REF DB "REFUSE TO ENTER!$" DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA START:
MOV AX,DATA
MOV DS,AX
MOV ES,AX
MOV DX,SEG MAIN
MOV DS,DX
MOV DX,OFFSET MAIN
MOV AX,2560H
INT 21H
INT 60H
MOV AH,4CH
INT 21H
MAIN PROC NEAR
MOV AX,DATA
MOV DS,AX
DISP1:LEA DX,MESG
MOV AH,9
INT 21H
INPUT: MOV AH,10
LEA DX,WAITFINPUT
INT 21H
HANG: MOV DL,0DH
MOV AH,2
INT 21H
MOV DL,0AH
MOV AH,2
INT 21H
CALL CHECK
CHECK PROC NEAR
CLD
MOV CL,WAITFINPUT+1
CMP CL,5
JNZ REFE
MOV CH,0
LEA SI,WAITFINPUT+2 LEA DI,USER_NAME
REPE CMPSB
JCXZ WELM
CALL REFE
RET
CHECK ENDP
REFE PROC NEAR
LEA DX,REF
MOV AH,9
INT 21H
REFE ENDP
JMP ENDN
WELM PROC NEAR
LEA DX,WEL
MOV AH,9
INT 21H
WELM ENDP
ENDN: MOV DL,0DH
MOV AH,2
INT 21H
MOV DL,0AH
MOV AH,2
INT 21H
MOV AH,4CH
INT 21H
RET
MAIN ENDP
CODE ENDS
END START
程序结果调试截图如下:
实验成绩:指导教师:王永娟日期:2012.12.24