华中科技大学汇编实验报告6_第1页
华中科技大学汇编实验报告6_第2页
华中科技大学汇编实验报告6_第3页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

华中科技大学汇编实验报告6课程实验报告课程名称: 汇编语言程序设计实验实验名称:实验六 输入输出与中断处理程序设计实验时间:2016-4-26,14:00-17:30 实验地点:南一楼804室74号实验台指导教师: 张勇 专业班级计算机科学与技术201409学 号: U201414813 姓 名: 唐礼威同组学生: 无 报告日期: 2016年5月2日原创性声明有关观点、方法、数据和文献等的引用已经在文中指出。除文中已经注明引用的内容外,本报告不包含任何其他个人或集体已经公开发表的作品或成果,不存在剽窃、抄袭行为。特此声明!PAGE3PAGE3汇编语言程序设计实验报告学生签名:日期:成绩评定实验完成质量得分(70分)(骤清晰详细录真实完整等)教师签字:

报告撰写质量总成绩得分(30分) 分)(报告规范、完整、通顺、详实等)指导日期:汇编语言程序设计实验报告汇编语言程序设计实验报告0汇编语言程序设计实验报告000汇编语言程序设计实验报告先输入待读取的CMOS内部单元的地址编号(可以只处理编号小于10的地址单元IN/OUTCMOS内的指定单元的信息。16断一下是否正确1 实验过程1设计思想及存储单元分配10H理程序的入口地址。tdAL=10H断信息。直接把主存中的DS:[40H]→IP,DS:[42H]→CSBXCX。流程图无源程序renwu61.386CODESEGMENTUSE16PAGE15PAGE15汇编语言程序设计实验报告ASSUMECS:CODESTART:XORAX,AXMOVDS,AXMOVINT21HMOVINT21HCODEENDSENDSTARTrenwu62.386STACK SEGMENT USE16 DB200DUP(0)STACKENDSCODESEGMENTUSE16ASSUMECS:CODE,SS:STACKSTART:XORAX,AXMOVDS,AX汇编语言程序设计实验报告XORXORMOVBX,DS:[40H]MOVCX,DS:[42H]MOVAH,4CHINTCODEENDSENDSTART实验步骤td在地址输入窗口输:40H{(0:[10*4])->IP,(0:[10*4+2]->CS}读取连续4然后置代码区为当前区。输入刚才得到的值,得到对应的程序。将程序renwu61tdrenwu61tdbx的改变情况;将程序renwu62误。运行td,在td中单步调试,观察寄存汇编语言程序设计实验报告器的值。实验记录(包括实验条件、输入/输出、错误和修改等信息的记录)16MXP命令行窗口;EDIT.EXE 2.0;MASM.EXE 6.0LINK.EXE5.2;TD.EXE。ds0:40h开20F9623002;35TDes3002,bx0F96;0:40h22cxcx3002,bx0F96;明以上方法实施得到的结果准确无误2设计思想及存储单元分配设计思想:汇编语言程序设计实验报告修改键盘驱动中断程序(int16h0:58h4在新的中断程序中,先判断用户调用的是否为键盘驱动中断程序的读入键盘功能,若不是,则直处理。实际上我们改变出口参数中AL的值即是键入字ASCII汇编语言程序设计实验报告流程图开始开始INT的功能Y调用OLD_INT输入为AY返回AL改为BNN输入为BYN正常返回AL返回AL改为A结束源程序程序名renwu63.386DATA SEGMENTDATA ENDSCODE SEGMENTUSE16ASSUMECS:CODE,SS:STACKOLD_INTDW?,?汇编语言程序设计实验报告NEW16H:CMPAH,00HJEATBCMPJEATBJMPDWORDPTROLD_INTATB:PUSHFasciiCALLCMPDWORDAL,41HPTROLD_INTJNZNEXT1;MOVAL,42HJMPQUITNEXT1:CMPAL,42HJNZNEXT2MOVAL,41HJMPQUITNEXT2:CMPAL,61HJNZNEXT3汇编语言程序设计实验报告MOVAL,62HJMPQUITNEXT3:CMPAL,62HJNZQUITMOVQUIT:IRETSTART:XORAX,AXMOVDS,AXMOVAX,DS:[16H*4]MOVOLD_INT,AX ;保存偏移部分MOVAX,DS:[16H*4+2]MOVOLD_INT+2,AX ;保存段值CLIMOVWORDPTRDS:[16H*4],OFFSETNEW16H

MOVDS:[16H*4+2],CSSTI汇编语言程序设计实验报告MOVDX,OFFSETSTART+15SHRDX,4ADDDX,10HMOVAL,0MOVAH,31HINT21HCODE ENDSSTACKSEGMENTUSE16STACKDB200DUP(0)STACKENDSENDSTART实验步骤使用编辑程序EDIT.EXE 录入源程序renwu63,编译,链接。错误,修改后再重新编译。a/A,b/B;b/B,a/A。实验记录实验环境条件:16M内存;WINDOWSXP命令汇编语言程序设计实验报告行窗口;EDIT.EXE 2.0;MASM.EXE 6.0LINK.EXE5.2;TD.EXE。a/Ab/B;在键盘键入ababAB,输出:首地址保存下来后,可有有两种方式调用旧的中断程序:Jmpdwordptrold_int;Calldwordptrold_int;前一种方式,可直接结束新的(不返回至)中断程序;后一种方式,可返回至新的中断程序。汇编语言程序设计实验报告3设计思想及存储单元分配1in指定端口取出数据即可。流程图开始开始一号功能调用输入字符转化成数字INAX输出AX数据结束源程序renwu64.386.386datadatasegmentuse16bufbufdb2datadataends汇编语言程序设计实验报告stacksegmentuse16stackstacksegmentuse16stackdb200dup(0)db200dup(0)stackendsstackendscodecodesegmentuse16assumeds:data,ss:stack,cs:codeassumeds:data,ss:stack,cs:codestart:start:movax,datamovax,datamovds,axmovds,axlopa:lopa:movah,1;读入输入int21hint21hsubal,30hsubal,30h0~9out70h,alout70h,al;取出信息ininal,71hmovah,almovah,alandal,0fhandal,0fhshrah,4shrah,4addax,addax,3030hascll汇编语言程序设计实验报告xchgah,alxchgah,almovbx,axmovbx,axleasi,bufleasi,bufmovwordptr[si+1],bxmovwordptr[si+1],bxmovdl,0ahmovdl,0ah;输出换行movah,2movah,2int21hint21hmovdl,0dhmovdl,0dhmovah,2movah,2int21hint21hmovdl,blmovdl,bl;输出信息movah,2int21hmovdl,bhmovah,2int21hmovdl,0ah;输出换行movah,2int21hmovdl,0dh汇编语言程序设计实验报告movah,2movah,2int21hint21hjmplopajmplopa;循环movah,4chmovah,4chint21hint21hcodeendscodeendsendstartendstart实验步骤renwu64,编译,链接。错误,修改后再重新编译。0‘信息,验证是否正确。实验记录实验环境条件:16M内存;WINDOWSXP行窗口;EDIT.EXE2.0MASM.EXE6.0LINK.EXE5.2;TD.EXE。BCD汇编

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论