- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第一二次实验报告.
东南大学
《微机实验及课程设计》
实验报告
实验一 指令汇编语言基础
实验二 汇编语言程序设计
实验目的与内容
实验目的
实验一:
⑴了解命令行操作基本方式和基本命令,掌握pc环境下命令行方式的特点;
⑵掌握汇编语言程序指令编辑、宏汇编、连接、运行基本概念;
⑶熟练掌握动态调试程序TD的常用命令和窗口功能,学会用TD调试程序,修改环境;
⑷学会利用DEBUG或TD检查认识指令功能;
实验二:
⑴进一步熟悉汇编语言程序的编辑、宏汇编、连接、运行基本概念;
⑵熟练掌握动态调试程序TD/DEBUG的常用命令或窗口功能,学会用TD/DEBUG调试程序的修改数据寄存器等环境;
⑶熟悉掌握汇编语言程序的典型数据结构设计、典型程序流控制方法,了解DOS/BIOS功能调用的基本方法;
(二)实验内容及要求
实验一
(1)、掌握进入全屏命令行方式、修改环境的方法
启动开始菜单里的运行选项,键入cmd,即可启动命令行方式,在其属性栏中选择全屏即可进入全屏命令行方式。
(2)、确定源程序的存放目录,构建个人实验环境。
(3)、建立、编辑汇编源程序
选择程序样本,构建典型的汇编程序框架,包括基本的数据段、堆栈段和代码段,编写程序实现如下功能:在data1和data2两个存储单元中分别存放两个16进制数,将他们相加后所得值存入data3中。(必做)
在DATA1和DATA2两个存储单元分别存放两个16进制带符号数,比较两个数的大小,并将较小的数存入DATA3单元中。(选做)
(4)、用汇编工具(MASM/TASM.EXE)汇编源程序产生OBJ目标文件
将所要变异的源程序文件(add.asm)放到带汇编工具的文件夹中,在全屏命令行模式下,进入该文件夹,输入tasm add.asm,回车后即可编译产生OBJ目标文件。
(5)、用链接程序(LINK/TLINK.EXE)产生EXE可执行文件
产生OBJ目标文件后,继续输入:tlink add.obj,回车后即可产生EXE可执行文件。
(6)、用调试工具软件(TD.EXE/D)调试执行程序
在Windows中启动TD
仅启动TD而不载入要调试的程序
双击TD.EXE文件名,Windows就会打开一个DOS窗口并启动TD。启动TD后会显示一个版权对话框,这时按回车键即可关掉该对话框。
启动TD并同时载入要调试的程序
把要调试的可执行文件拖到TD.EXE文件名上,Windows就会打开一个DOS窗口并启动TD,然后TD会把该可执行文件自动载入内存供用户调试。若建立可执行文件时未生成符号名表,TD启动后会显示“Program has no symbol table”的提示窗口,这是按回车键即可关掉该窗口。
观察CPU寄存器、存储器环境
TD启动后呈现的是一个具有窗口形式的用户界面,称为CPU窗口。
单步、断点运行,观察中间结果,完成正常执行。
TD功能键F7为跟踪进入(对CALL指令将跟踪进入子程序),F8为单步跟踪(对CALL指令将执行完子程序返回后才停下),F2为在当前光标处设置、清除断点。通过单步、断点运行中观察数据区、各个寄存器值的变化,以验证程序运行是否正确。
修改当前运行环境,直接编写程序片段,验证指令功能。
修改寄存器(AX、BX、CX、DX、SI、DI、BP、SP),并观察修改段寄存器。
修改存储器,并指定不同存储段。
修改 CS:IP,单步运行制定指令(F7或F8),观察指令运行结果。
将光标放置在TD窗口的代码区右击,可显示代码区的局部菜单,选择相应功能进行操作。
重点解决段存储结构和数据变量的定义和访问。
访问数据段中具体位置的值时,可将光标放置在数据区,右击产生数据区菜单。
实验二:
(1)、编写程序实现如下功能:
从键盘输入任意字符串后,存入自定义存储单元,判断处理后将字符串中小写字母转换为大写字母(其他字符不变)并按员顺序将这些字符在屏幕上显示出来。(必做)
从键盘输入在0~65535之间的十进制数,将其转换为16进制数并在屏幕上显示出来,要求判断输入字符串是否为在0~65535之间的十进制数。(必做)
题目同上,在输入数值时采用按位判断方法,即每位数字输入是判断,如果不符合则拒绝输入该字符,并将符合的字符存入。(必做)
从键盘输入5个十六进制带符号数(范围-128~+127),请将它们按从大到小排序,并将排序前后的数据显示在屏幕上。(选做)
(2)、复习TD各宗操作,并用DEBUG调试程序,学会基本命令操作,并通过单步、设置断点等方法观察中间结果,完成正常运行。
命令行方式下直接键入debug myfile.exe回车(myfile为待调试可执行程序),进入调试方式(显示_),键入H回车显示全部命令、格式和功能。常用命令有:U(
文档评论(0)