- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
武大微机原理实验报告汇总 (4000字)
武大微机原理实验报告汇总 (4000字)
ok3w_ads(“s004”);
ok3w_ads(“s005”);
微型计算机原理与接口技术
实验报告
【实验名称】 汇编语言程序的编辑与调试 【实验目的】
学习汇编源程序的编辑、编译、链接、执行全过程。
学习编辑文件、TASM、TLINK的使用方法以及汇编语言的语法规则。 学习使用TD对程序进行调试的方法。 【实验步骤】
1、将程序1输入并存储为hello.asm文件 2、编译与链接
首先对源代码进行编译,指令为:
C:gt;TASM HELLO / zi 生成HELLO.OBJ 编译如果报错,需要回到编辑窗口修改源代码,存盘后重新编译 编译成功后,链接生成可执行文件
C:gt;TLINK HELLO / v / 3 生成HELLO.EXE 3、 启动调试工具TD (Turbo Debugger)
键入:C:gt;TD HELLO
成功启动TD之后,TD进入MODULE显示模式,屏幕上显示HELLO-ASM源程序,一个三角形符号指示出了标号为BEG的那条指令是启动指令。 4、 动态调试(按照以下的步骤学习掌握TD的用法) (1) 连续执行程序
按F9键(即Run | Run),即可从BEG开始连续执行程序。 (2) 查看执行结果
按Alt+F5键(即Window | User screen),临时切换到DOS屏幕,可查看程序的执行结果,即5行HELLO。
注意:Alt键要多按一会儿,直到快捷键提示区更换提示内容之后再按F5键。按任意键可以恢复MODULE窗口内容。
(3) 使光标重新指向启动指令
当程序运行结束(三角形光标消失),按Ctr1+F2(Run|Program rest)可以重新装入程序并使光标指向启动指令。 (4) 程序的单步执行
单步操作一次仅执行了一条指令,有3个单步操作命令,它们的区别仅在于quot;跟踪quot;的情况不同。
F8 (Run | Step over) 单步操作。执行CALL和INT n指令的时候,quot;不跟踪quot;相关的子
程序。quot;不眼踪quot;的含义是指在进入相关子程序后,自动地连续执行子程序指令直到返回。所以,宏观上看不到跟踪的效果。
F7 (Run | Trace into) 单步操作。执行CALL指令能够跟踪子程序,随即暂停,等待用
户的下一步操作。但是在遇到INT n指令时与F8一样,进入服务程序后立即自动地连续执行服务程序直到返回。
Alt+F7 (Run | Instruction trace)单步操作。真正意义上的单步操作,执行CALL和INT n
指令进入相关子程序之后立即停止,等待用户的下一步操作。
实践证明:用Alt+F7跟进服务程序以后,如果再执行单步操作,很容易使系统瘫痪。因此,请读者慎用。编者认为:Alt+F7的用途在于跟进中断服务程序以后,可以了解服务程序的结构,如果服务程序是系统设计的 (如INT 21H,INT 10H等),应当用F8操作。 (5) 断点的设置和取消
按↑、↓键,使光标指向欲设置断点的指令,再按F2键 (Breakpoints | Toggle),则红色光条覆盖光标处的指令,表示断点设置成功,重复上述操作,可以设置多个断点。
将光标移到红色光条覆盖的指令,再次按下F2键,红色光条消失,表明此处断点撤销。 设置断点的目的是使程序执行到断点指令时暂停,以便检查执行结果。 (6) 检查单步执行结果
指令执行后一定会使目标寄存器和状态标志发生变化,欲查看执行效果,怎么办? 在CPU窗口调试时
因为窗口中有寄存器、标志寄存器显示窗口,所以,当前指令执行后,可以从相关的显示窗口中看到结果。 在MODULE窗口调试时
选中View |Registers可弹出寄存器和标志寄存器显示窗口,就可以查看执行结果。 (7) 检查内存数据区的内容
如果被调试程序要对数据段或附加段进行操作,怎样检查结果?关键问题是要找出用户程序的数据段或附加段。
以例题1为例,说明这一操作的实现过程。 如果调试是在MODULE窗口进行
首先选择View | Dump ,弹出内存数据显示窗口,接着再按Ctrl+S弹出一个对话框,
用户键入HELLO’—--用单引号括起来的这一字符串是例1用户数据段中设置的内容,TD根据用户的提示立即找出并显示用户程序数据区。
做好以上准备工作之后,按F8键单步执行指令,就可以看到用户数据段内
您可能关注的文档
最近下载
- 中学食堂建设项目社会稳定风险评估报告(模板范文).docx
- 第9课 互传密信有诀窍 教案 义务教育人教版信息科技五年级全一册.docx VIP
- 根本原因分析精神病人自杀RCA.pptx VIP
- SL523-2024 水土保持监理规范.docx VIP
- 路面结构层厚度评定表(代表值自动计算).xls VIP
- 雨虹防水质保合同范本Word模板.docx VIP
- 旅游产品策划与设计422全书教学课件电子教案.ppt
- Toll样受体信号通路中MyD88的研究进展_吴燕燕.pdf VIP
- 2024水土保持工程施工监理规范.docx VIP
- 义务教育版(2024)五年级全一册 第1课 生活处处有算法 教案.docx VIP
文档评论(0)