DOS输入输出功能使用.docVIP

  • 4
  • 0
  • 约3.79千字
  • 约 5页
  • 2020-04-01 发布于江苏
  • 举报
实验一 DOS输入输出功能的使用 实验目的: 1.掌握8086汇编语言程序的汇编、链接、运行的方法。 2.掌握用软中断调用DOS输入输出功能的方法。 3.掌握将二进制数转换成十进制数的编程方法。 实验设备: 计算机一台。预装Windows XP、宏汇编MASM5。 实验内容A: 编写能够实现以下要求的汇编语言程序,并上机实现。 1.用DB定义一个字符串,以“$”作为结束符。用将以下方法该字符串输出到屏幕上。 MOV DX,字符串首地址 MOV AH,9 INT 21H 2.将字符串的长度转换成十进制,用以下方法该字符串输出到屏幕上。 MOV DL,字符ASCII码 MOV AH,2 INT 21H 3.用以下方法从键盘输入字符,并将其存入到内存中,直到输入“$”为止。形成一个以“$”结尾的字符串。再将这个字符串输出到屏幕。 MOV AH,1 INT 21H 输入的字符在AL中。 实验内容B: 编写能够实现以下要求的汇编语言程序,并上机实现。 1.将你名字的汉语拼音、学号等输出到屏幕上,注意应各占一行,即每输出一项,在其后还应输出回车和换行符。 预习要求: 1.预习汇编语言程序上机的步骤,掌握汇编语言程序上机的过程。 2.阅读实验内容A的参考源程序,对其结构以及实现方法进行分析,在理解的基础上掌握编程方法。 3.根据要求,编写实验内容B的源程序。 4.编辑建立实验内容A和实验内容B的源程序文件,存入U盘保存。 5.写出预习报告,报告中应有实验内容B的源程序清单。 实验步骤: 1.编辑建立实验内容A的源程序,对其进行汇编、链接获得可执行文件。运行可执行文件,实现实验内容A的要求。 2.参考实验内容A的源程序,编辑建立实验内容B的源程序,对其进行汇编、链接获得可执行文件。如果在汇编、链接过程中有错误产生,则根据提示信息逐一修改错误,直到无错误产生。运行可执行文件,实现实验内容B的要求。 重要提示: 1.源程序文件名应为*.ASM。 2.源程序文件中的字符必须是西文半角字符,不能使用中文全角字符。 3.在源程序文件中不要把数字“0”错写成字符“O”,或者把字符“O”错写成数字“0 4.实验内容A的第3步,要求操作者输入若干字符,并以$结束。在输入$后,你会看到2行相同的字符,第1行的最后有$,这是DOS系统产生的;第2行的没有$,这是程序产生的。 5.实验内容B,可以通过添加: String3 db 姓名内容,$ String4 db 学号内容,$ 来实现。 6.实验内容A中其他不用的指令可以删除。 实验内容A参考程序: name demo1 data segment string1 db 1234567890abcdefg,$ ;准备显示的字符串 count db $-string1-1 ;上面字符串的长度 string2 db 100 dup(?) ;准备放输入字符串的空间 data ends stack segment para stack stack db 100 dup(100) stack ends code segment start proc far assume cs:code, SS:STACK,ds:data begin: push ds mov ax,0 push ax mov ax,data mov ds,ax lea dx,string1 ;输出字符串 mov ah,9 int 21h ;输出回车和换行符,以实现另起一行 mov dl,0dh ;输出回车命令 mov ah,2 int 21h mov dl,0ah ;输出换行命令 mov ah,2 int 21h mov al,count ;将字符串长度转换成3位十进制数输出 mov ah,0 ;高8位补0 mov cl,100 div cl ;除以100获得百位数 push ax ;暂存结果和余数 mov dl,al add dl,30h ;换成ASCII码 mov ah,2 ;输出字符到屏幕 int 21h pop ax

文档评论(0)

1亿VIP精品文档

相关文档