资源描述:
《实验3 汇编语言程序上机过程》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、南昌大学实验报告学生姓名:学号:专业班级:实验类型:■验证□综合□设计□创新实验日期:2010.11.15实验成绩:实验3汇编语言程序上机过程一.实验目的熟练掌握汇编语言程序的编辑、调试和运行的过程和方法。了解汇编语言程序的汇编、运行环境。二.实验内容1.掌握常用的编辑工具软件(如WORD、EDIT)、MASM和LINK的使用;2.伪指令:SEGMENT,ENDS,ASSUME,END,OFFSET,DUP;3.利用的INT21H的1号功能实现键盘输入的方法;三.实验要求1.仔细阅读有关伪指令SEGMENT,ENDS,ASSUME,END,OF
2、FSET,DUP的内容;2.了解利用的INT21H的1号功能实现键盘输入的方法,了解.EXE文件和.COM文件的区别及用INT21H4C号功能返回系统的方法;3.阅读下面程序段。四.实验环境PC微机DOS操作系统或Windows操作系统MASM。EXE,LINK。EXE,DEBUG。COM或宏汇编集成环境五.实验步骤1、按步骤完成下列程序的编译、连接、运行及调试等过程:datasegmentmessagedb'Thisisasampleprogramofkeyboardanddisply'db0dh,0ah,'Pleasestriketheke
3、y!',0dh,0ah,'$'dataendsstacksegmentparastack'stack'db50dup(?)stackendscodesegmentassumecs:code,ds:data,ss:stackstart:movax,datamovds,axmovdx,offsetmessagemovah,9int21hagain:movah,1int21hcmpal,1bhjeexitcmpal,61hjcndcmpal,7ahjandandal,11011111bnd:movdl,almovah,2int21hjmpagaine
4、xit:movah,4chint21hcodeendsendstart实验步骤:1.用用文字编辑工具(记事本或EDIT)将源程序输入,其扩展名为.ASM。2.用MASM对源文件进行汇编,产生.OBJ文件和.LST文件。若汇编时提示有错,用文字编辑工具修改源程序后重新汇编,直至通过。3.用TYPE命令显示1产生的.LST文件。4.用LINK将.OBJ文件连接成可执行的.EXE文件。5.在DOS状态下运行LINK产生的.EXE文件。即在屏幕上显示标题并提示你按键。每按一键在屏幕上显示二个相同的字符,但小写字母被改成大写。按ESC键可返回DOS。若未
5、出现预期结果,用DEBUG检查程序。6.将程序修改,使得用户键入除小写字母以外的其他字符(除ESC键),输出提示信息“Illegalcharacterisstriked,Pleaseinputagain!”,并要求重新输入。修改后的程序如下:datasegmentmessagedb'Thisisasampleprogramofkeyboardanddisply'db0dh,0ah,'Pleasestrikethekey!',0dh,0ah,'Ifyouwanttoexit,pressthespacekey.',0dh,0ah,'$'str1db
6、0dh,0ah,'Illegalcharacterisstriked,Pleaseinputagain!',0dh,0ah,'$'dataendsstacksegmentparastack'stack'db100dup(?)stackendscodesegmentassumecs:code,ds:data,ss:stackstart:movax,datamovds,axmovdx,offsetmessagemovah,9int21hagain:movah,1int21hcmpal,20hjzexitcmpal,1bhjeexitcmpal,61
7、hjcillegalcmpal,7ahjaillegalandal,11011111bmovdl,almovah,2int21hjmpagainillegal:movdx,offsetstr1movah,9int21hjmpagainexit:movah,4chint21hcodeendsendstart2.下面程序任务是完成求一个十以内数的立方,程序有错误,请进行纠正并调试运行。DATASEGMENTTABLEDB0,1,8,27,64,125,216,343,512,729HEXDW5RESULTDW?DATAENDSCDSEGMENTAS
8、SUMECS:CODE,DS:DATSTART:MOVAX,DATAMOVDS,AXMOVBX,OFFSETTABLEMOVAX,HEXXLATADD