汇编课设_测量任意程序运行时间解说.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课题名称 测试任意运行时间 一、设计内容与设计要求 1.课程设计目的: 《汇编语言程式设计》是计算机专业的重要的专业基础课,通过本课程设计使学生进一步巩固课堂所学,全面熟悉、掌握808宏汇编语言程式设计的基本方法和技巧,进一步提高编写程式、阅读分析程式及上机操作、调试程式的能力。 2.课题题目 1)测量任意程式的运行时间 )读入一个文本文件并以DEBUG中的D命令格式显示。 3)文件加密程式 4)编写一个时钟程式 5)画网格线 6)画脉冲波图形 7)用“*”画菱形框 8)计算比赛成绩 3.设计要求: 1)在一周内学生须上机16小时以上,程式调试完后,须由指导老师在机器上检查运行结果,经教师认可后的源程式可通过打印机输出。 2)分组及安排 A.每组同学必须完成所指定的题目,每个同学须自己完成设计,应有不同的思路。 B.按学号分组,第一组为1、9、17、25、33号同学,第二组为2、10、18、26、34号,第三组为3、11、19、27、35号,依次类推,其中第一组做第一题,第二组做第二题,依次类推。 3)按规定格式完成课程设计报告,将其打印稿(A4纸)上交给老师存档。 4)不得抄袭他人程式、课程设计报告,每个人应体现自己的个性设计,成绩的考核按上机表现、答辩成绩及课程设计说明书来综合评定。成绩分为优、良、中、及格、不及格五级分评定。 二、进度安排 第周 星期三 14时:00分——18时:00分 星期日 8时:00分——12时:00分 第周 星期一 14时:00分——18时:00分 星期三 8时:00分——12时:00分 星期三 14时:00分——18时:00分 星期五 8时:00分——12时:00分 目 录 一、 题目 1 二、总体设计方案、思路 1 三、设计框图 2 四、源清单 2 五、调试结果 9 六、设计总结 10 题目 测量任意程式的运行时间 要求:该程式驻留记忆体 思路:DOS操作系统中,程式的调入运行及程式的终止均是通过相应的软中断来实现的。若取得相应软中断,记录下程式开始调入运行的时间及程式终止的时间,则可测量出该程式运行的时间。 提示要点:与之相关的软中断分别为: 程式开始执行:4BH号系统功能调用(INT 21H) 程式结束: INT 20HINT 27H 00H、3lH、4CH号系统功能调用(INT 21H)。 二、程式总体设计方案、思路 总体设计 DOS系统中所有程式的开始和结束都会调用特定中断的相应功能,我们要测试某一程式运行时间,只要分别记录程式开始的系统时间以及结束时的系统时间。再将二者求差值,就可以算出该程式运行时间了。 设计思路 我们可以取得开始和结束时调用的相应的中断,在中断执行之前加入记录时间的功能,记录完之后再调回到原中断,既不影响中断调用又达到了记录的目的。 在取得 21号中断的时候先要对AH中的数字进行判断,再决定执行开始的计时还是结束的计时。开始计时和结束计时分别为两个子程式BEGIN和FINISH,BEGIN将即时时间存入变量中,FINISH先获取当前时间,再把变量里的开始时间相应寄存器,求两者的差值,这个过程中的借位判断较为复杂。求完差值之后就利用INT 21H的2号功能输出HH:MM:SS:S。 程式设计框图 四、源清单 ;Main Program: CODE SEGMENT MESS DB THE PROGRAM RUNNING TIME IS:$ TIME1 DW 0 TIME2 DW 0 SAVE1 DD ? SAVE2 DD ? SAVE3 DD ? MAIN PROC FAR ASSUME CS:CODE,DS:CODE START: PUSH CS POP DS MOV AX,3521H ;取出(21号类型的)中断向量 INT 21H MOV WORD PTR SAVE1,BX MOV WORD PTR SAVE1+2,ES PUSH DS MOV DX,OFFSET INT_21H MOV AX,SEG INT_21H MOV DS,AX MOV AL,21H ;设置中断向量,返回被测程序 MOV AH,25H INT 21H POP DS MOV AL,27H ;取出中断向量27号中断也是程序结束中断,保存在ES:BX中 MOV AH,35H INT 21H MOV WORD PTR SAVE2,BX MOV WORD PTR SAVE2+2,ES PUSH DS MOV DX,SEG INT_27H MOV DS,AX MOV DX,OFFSET INT_27H MOV AL,27H  ;设置27号中断向量 MOV AH,25H INT

文档评论(0)

武神赵子龙 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档