资源描述:
《微机原理实验报告(1).doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、微机原理与接口技术实验报告学院:计算机科学与工程学院专业:计算机科学与技术班级:计算机四班学号:姓名:指导老师:宋芳2011年12月1日调试程序DEBUG的使用练习一、实验目的:1.学习DEBUG常用命令的使用2.熟悉8086的寄存器3.了解程序运行的过程二、实验内容:分别用DEBUG程序的命令实现对PC机RAM单元、CPU寄存器等的内容修改及简单程序的跟踪运行;三、具体实验过程Debug的R命令查看、改变CPU寄存器的内容Debug的D命令查看内存中的内容Debug的E命令改写内存中的内容Debug的U命令将内存中的机器
2、指令翻译成汇编指令Debug的T命令执行一条机器指令当指令是修改段寄存器SS时,修改SP的指令也一下执行了。也可以跳到指定代码段执行:-t=0B39:0106Debug的A命令以汇编指令的格式在内存中写入一条机器指令用G是断点执行,用-g=10010610D,默认为段地址是CS。2、在debug中,遇到loop循环指令时,可以用p跳过;实验十八写文件实验一.实验要求编写程序,将内存区域中用DEBUG程序设置好的一连串数据,以ASCII码1AH为结束符作为一个文件,存入磁盘,文件名为DATA.AAA.二.实验目的掌握写文件的
3、DOS功能调用方法。三.实验说明1.对于文件的读写操作,DOS提供了两种手段,第一种手段使用FCB进行存取,第二种手段是文件代号法进行存取。文件代号法支持目寻路径,并且对错误采用了更统一的办法处理,是DOS推荐的存取方法。2.使用文件代号法,要求文件名(含路径)用ASCII串表示,所谓ASCII串,就是以空字符00H结尾的一串ASCII字符。3.文件代号法存取时出现错误,则功能调用返回时,要将CF标志位置1,同时在AX寄存器中返回统一的出错代码。程序中要用JC指令进行错误判定,确认出错后再将错误代码显示出来,以便分析出错原
4、因。四.实验代码DATASEGMENTBUFFERDB'mynameistangzhiquan,mynumberis0905010215'COUNTEQU$-BUFFER;thecountofASCIIforbufferDADB'pleaseenterthefileabsolutepathandfilename:$'ADDRESSDB40,?,40DUP(?)BUILD_FAITDBOFFSETAX3,OFFSETAX4,OFFSETAX5AX3DB'pathcannotfind$'AX4DB'openfiletoomuc
5、h$'AX5DB'accessmethodiswrong$'DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXLEADX,DA;PromptforthefileabsolutepathMOVAH,9INT21HLEADX,ADDRESS;setfilepathMOVAH,0AHINT21HMOVAH,2;putcrlfMOVDL,0AHINT21HMOVDL,0DHINT21HMOVAL,ADDRESS+1;thenumberofpathtoSI
6、MOVAH,0MOVSI,AXMOVDX,OFFSETADDRESS+2;thefirstaddressforfilepathMOVBX,DXMOVBYTEPTR[BX+SI],'$';theendadd'S'tomarktheendMOVCX,00H;filepropertyMOVAH,3CH;createafile,theabsolutepathis"ADDRESS"INT21HJNCNEXT;signcreatefilesuccesWRONG_SHOW:MOVBX,OFFSETBUILD_FAIT;showthere
7、asonforfileestablishSUBAX,3;failcodeofaxis3,4,5ADDBX,AX;ds:dxisthewronginformation'sfirstaddressMOVDL,[BX]MOVDH,0MOVAH,9INT21HNEXT:MOVBX,AX;axisthenumberoffilehandlesMOVCX,COUNT;thenumberofbufferLEADX,BUFFER;ds:dxpointthefirstaddressofbufferMOVAH,40HINT21HINT21H;e
8、ndMOVAX,4C00HINT21HCODEENDSENDSTAR开始初始化用int21H的9号调用显示提示输入文件的绝对路径用int21H的0AH号调用输入并回显在屏幕上,并存入变量ADDRESS中,在后面加入'$'结束符输出换行回车用int21H的3CH号调用创建文件DATA.AAA,属性为默认读