资源描述:
《汇编语言实验报告四》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第四次上机题目录实验目的2实验一2一、题目2二、要求2三、源程序2四、实验过程6五、实验记录7实验二8一、题目8二、实验要求8三、寄存器分配和变量定义说明91主模块中寄存器及主要变量的使用分配92子程序的入口参数及出口参数9四、流程图11五、源程序13六、实验步骤23七、实验记录23实验三27一、题目27二、解题方法的简要说明28三、源程序28四、实验步骤32五、实验记录32实验四33一、题目33二、源程序33三、实验步骤46实验心得48班级:信安0903学号:U200915335姓名:邹超第时间:2011年6月20日实验目的1.掌握多模块程序设计方法2.掌握中断矢量表的概念以
2、及中断处理程序设计方法3.了解Win32程序编写方法实验一一、题目直接运行调试工具(TD.EXE),观察中断矢量表中的信息,指出中断类型码21H对应的中断处理程序的入口地址。二、要求在调试工具下调入以前编好的运行程序,跟踪执行INT21H,观察CS及IP是否改变成了前面记录的值。三、源程序源程序如下:;将中断处理程序驻留在内存。;DOS功能调用,功能号31H.386STACKSEGMENTUSE16STACKDB100DUP(0)STACKENDSCODESEGMENTUSE16ASSUMECS:CODE,DS:CODE,SS:STACKCOUNTDB18HOURDB?,?,'
3、:'MINDB?,?,':'SECDB?,?BUF_LEN=$-HOURCURSORDW?OLD_INTDW?,?MESSAGEDB'PRESSQORqExit',0dh,0ah,'$';新的8号中断处理程序NEW08HPROCFARPUSHFCALLDWORDPTRCS:OLD_INTDECCS:COUNTJZDISPIRETDISP:MOVCS:COUNT,18STIPUSHAPUSHDSPUSHESMOVAX,CSMOVDS,AXMOVES,AXCALLGET_TIME;获取并保存当前光标的位置(DH,DL)=行,列MOVBH,0MOVAH,3INT10HMOVCURSO
4、R,DX;在新的位置显示指定的串MOVBP,OFFSETHOURMOVBH,0MOVDH,0MOVDL,80-BUF_LENMOVBL,07HMOVCX,BUF_LENMOVAL,0MOVAH,13HINT10HMOVBH,0;恢复原来的光标位置MOVDX,CURSORMOVAH,2INT10HPOPESPOPDSPOPAIRETNEW08HENDP;从CMOS中读取时间(分别读时、分、秒)GET_TIMEPROCMOVAL,4OUT70H,ALJMP$+2INAL,71HMOVAH,ALANDAL,0FHSHRAH,4ADDAX,3030HXCHGAH,ALMOVWORDPT
5、RHOUR,AXMOVAL,2OUT70H,ALJMP$+2INAL,71HMOVAH,ALANDAL,0FHSHRAH,4ADDAX,3030HXCHGAH,ALMOVWORDPTRMIN,AXMOVAL,0OUT70H,ALJMP$+2INAL,71HMOVAH,ALANDAL,0FHSHRAH,4ADDAX,3030HXCHGAH,ALMOVWORDPTRSEC,AXRETGET_TIMEENDP;延时程序DELAYPROCPUSHECXMOVECX,0L1:INCECXCMPECX,500000HJBL1POPECXRETDELAYENDPBEGIN:PUSHCSPOP
6、DSLEADX,MESSAGEMOVAH,9INT21H;下面获取原8号中断处理程序的入口地址并保存MOVAX,3508HINT21HMOVOLD_INT,BXMOVOLD_INT+2,ES;在中断矢量表中置新的8号中断处理程序的入口地址MOVDX,OFFSETNEW08HMOVAX,2508HINT21H;从空格开始显示200个字符,每显示一个字符都要延时MOVDL,20HLOOP_DISP:CALLDELAYMOVAH,2INT21HINCDLCMPDL,200JBLOOP_DISP;读键盘输入,当输入为Q或q时,结束NEXT:MOVAH,0INT16HCMPAL,'Q'J
7、EEXITCMPAL,'q'JEEXITJMPNEXTEXIT:;新的中断处理程序驻留内存MOVDX,OFFSETDELAY+15MOVCL,4SHRDX,CLADDDX,10HADDDX,70HMOVAL,0MOVAH,31HINT21HCODEENDSENDBEGIN四、实验过程1编写主函数。2汇编源文件。3链接得到可执行文件。4运行可执行文件,观察实验结果。5在TD下调入以前编好的运行程序,跟踪执行INT21H,观察CS及IP是否改变成了前面记录的值。五、实验记录1分别汇编并连接源程序