广东技术师范学院实验报告
学院:自动化专业:
电气工程及其自
动化(低压电力智
能控制)
班级:
11低
电
成绩:
姓名:曹睿学号:2011104743018 组别:组员:
实验地点:教学楼703 实验日期:2012.04.11 指导教师签名:实验二项目名称:输入输出程序的编制
一、实验目的与要求
了解DOS的中断调用,实现数据的输入与输出,熟悉高级汇编调试工具Visualmasm的使用。
二、实验类型
验证型实验
三、实验原理及说明
利用DOS中断调用中的1号,2号和9号调用功能实现数据的输入与输出,同时通过本程序的调试了解汇编软件的使用。
1号调用:键盘输入字符
入口参数:无
出口参数:输入字符的ASCII码在AL寄存器中。
2号调用:显示器输出
入口参数:要输出的字符的ASCII码放在DL寄存器中
出口参数:无
9号调用:显示器输出字符串
入口参数:DS:DX中存放输出字符串缓冲区的首地址,字符串要求用字符”$”结束。
出口参数:无
四、实验主要仪器设备和材料
预习情况操作情况考勤情况数据处理情况
序号名称主要用途
1 电脑调试程序
五、实验内容和步骤
1、写一段程序,输出一个字符串“Visualmasm!”
步骤:在记事本里输入以下程序,把文件命名为zp1.asm:
DATA SEGMENT
STRING DB'Visualmasm!$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA, ES:DATA
START:MOV AX,DATA
MOV DS, AX
MOV ES, AX
MOV AH,09H
LEA DX,STRING
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START
打开命令提示符,生成zp1.obj文件,接着生成zp1.exe文件,输入td zp1.exe,就可以在TD里查看输入的程序。
点击数据区,右键点击GOTO,输入5B72:0000,可以看到Visualmasm的ASCII码,56 69 73 75 61 6C 6D 61。
2、写一段程序。
从键盘读入一个小写字母,然后把它转换成大写字母并输出。
步骤::在记事本里输入以下程序,把文件命名为zp2.asm
DSEG SEGMENT
STRING DB'a'
DSEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG
START:MOV AX,DSEG
MOV AH,01
INT 21H
SUB AL,20H
MOV DL,AL
MOV AH,02
INT 21H
MOV AH,4CH
INT 21H
CSEG ENDS
END START
打开命令提示符,生成zp2.obj文件,接着生成zp2.exe文件,输入小写字母a后,a的后面会自动生成相应的大写字母A,输入td zp2.exe,就可以在TD里查看输入的程序。
点击数据区,右键点击GOTO,输入5B72:0000就可以看到输入的小写字母的ASCII码,执行完TD里的第三条指令后,屏幕返回dos,输入字母a,又返回TD,继续执行指令,5B72:FFE8处会出现大写字母A的ASCII码。