资源描述:
《实验2 汇编语言程序上机过程.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、.南昌大学汇编语言程序设计实验报告学生姓名:学号:专业班级:实验类型:□验证□综合□设计□创新实验日期:实验成绩:实验2汇编语言程序上机过程一.实验目的熟练掌握汇编语言程序的编辑、调试和运行的过程和方法。了解汇编语言程序的汇编、运行环境。二.实验内容1.掌握常用的编辑工具软件(如WORD、EDIT)、MASM和LINK的使用;2.伪指令:SEGMENT,ENDS,ASSUME,END,OFFSET,DUP;3.利用的INT21H的1号功能实现键盘输入的方法;三.实验要求1.仔细阅读有关伪指令SEGMENT,END
2、S,ASSUME,END,OFFSET,DUP的内容;2.了解利用的INT21H的1号功能实现键盘输入的方法,了解.EXE文件和.COM文件的区别及用INT21H4C号功能返回系统的方法;3.阅读下面程序段。四.实验环境PC微机DOS操作系统或Windows操作系统MASM.EXE,LINK.EXE,DEBUG.COM或宏汇编集成环境五.实验步骤1、按步骤完成下列程序的编译、连接、运行及调试等过程:datasegmentmessagedb'Thisisasampleprogramofkeyboardanddisp
3、lay'db0dh,0ah,'Pleasestrikethekey!',0dh,0ah,'$'dataendsstacksegmentparastack'stack'db50dup(?)stackendscodesegmentassumecs:code,ds:data,ss:stackstart:movax,datamovds,axmovdx,offsetmessage页脚.movah,9int21hagain:movah,1int21hcmpal,1bhjeexitcmpal,61hjcdisplaycmpal
4、,7ahjadisplayandal,11011111bdisplay:movdl,almovah,2int21hjmpagainexit:movah,4chint21hcodeendsendstart实验步骤:1.用用文字编辑工具(记事本或EDIT)将源程序输入,其扩展名为.ASM。2.用MASM对源文件进行汇编,产生.OBJ文件和.LST文件。若汇编时提示有错,用文字编辑工具修改源程序后重新汇编,直至通过。3.用TYPE命令显示1产生的.LST文件。4.用LINK将.OBJ文件连接成可执行的.EXE文件。5.
5、在DOS状态下运行LINK产生的.EXE文件。即在屏幕上显示标题并提示你按键。每按一键在屏幕上显示二个相同的字符,但小写字母被改成大写。按ESC键可返回DOS。若未出现预期结果,用DEBUG检查程序。页脚.6.将程序修改,使得用户键入除小写字母以外的其他字符(除ESC键),输出提示信息“Illegalcharacterisstriked,Pleaseinputagain!”,并要求重新输入。datasegmentmessagedb'thisisasampleprogramofkeyboardanddisplay'
6、db0dh,0ah,'pleasestrikethekey!',0dh,0ah,'$'message2db'Illegalcharacterisstriked,Pleaseinputagain!'db0dh,0ah,'pleasestrikethekey!',0dh,0ah,'$'dataendsstacksegmentparastack'stack'db50dup(?)stackendscodesegmentassumecs:code,ds:data,ss:stackstart:movax,datamovds,
7、axmovdx,offsetmessagemovah,9int21hagain:movah,1int21hcmpal,1bhjeexit;如果输入是esc就退出cmpal,61hjcdisplay2;如果输入小于"a"cmpal,7ahjadisplay2;如果输入大于"z"andal,11011111bdisplay:movdl,al;直接输出movah,2int21hjmpagaindisplay2:movax,data;如果不是小写字母输出“重新再输”指令movds,axmovdx,offsetmessag
8、e2movah,9int21hjmpagainexit:movah,4chint21h页脚.codeendsendstart2.下面程序任务是完成查表求一个十以内整数的平方,程序有错误,请进行纠正并调试运行。DATASEGMENTTABLEDB0,1,4,9,16,25,36,49,64,81HEXDW5;待查的整数RESULTDW?DATAENDSCDSEGMENTAS