北邮电子院汇编语言上机过程1.docx
- 文档编号:10793019
- 上传时间:2023-02-22
- 格式:DOCX
- 页数:13
- 大小:905.16KB
北邮电子院汇编语言上机过程1.docx
《北邮电子院汇编语言上机过程1.docx》由会员分享,可在线阅读,更多相关《北邮电子院汇编语言上机过程1.docx(13页珍藏版)》请在冰豆网上搜索。
北邮电子院汇编语言上机过程1
微机原理与接口技术
实验报告
学院:
电子工程学院
班级:
组员:
学号:
汇编语言程序的上机过程
一、上机环境
v要运行调试汇编语言程序,至少需要以下程序文件:
▪编辑程序:
EDIT.COM或其他文本编辑工具软件,用于编辑源程序。
▪汇编程序:
MASM.EXE,用于汇编源程序,得到目标程序。
▪连接程序:
LINK.EXE,用于连接目标程序,得到可执行程序。
▪调试程序:
DEBUG.EXE,用于调试可执行程序。
二、上机过程
v汇编语言程序上机操作包括:
编辑、汇编、连接和调试几个阶段。
1.编辑源程序
v用文本编辑软件创建、编辑汇编源程序。
常用编辑工具有:
EDIT.COM、记事本、Word等。
v无论采用何种编辑工具,生成的文件必须是纯文本文件,所有字符为半角,且文件扩展名为.asm(文件名不分大小写,由1~8个字符组成)。
2.汇编
v用汇编工具对上述源程序文件(.asm)进行汇编,产生目标文件(.obj)等文件。
v汇编程序的主要功能是:
检查源程序的语法,给出错误信息;产生目标程序文件;展开宏指令。
v汇编过程如下:
v在DOS状态下,输入命令:
MASMMYFILE.ASM(回车),即启动了汇编程序。
v此命令执行后,会出现下面的3行信息,依次按回车键(即选择默认值)即可建立3个输出文件,其扩展名分别为:
.OBJ(目标文件),.LST(列表文件)和.CRF(交叉引用文件)。
ObjectFilename[MYFILE.OBJ]:
SourceListing[Nul.LST]:
CrossReference[Nul.CRF]:
依次按回车键,进行选择后,汇编程序就对汇编源程序进行汇编。
如果汇编过程中发现有语法错误,则屏幕上会显示出错语言的位置和出错的类型。
此时,需要进行修改,然后再进行汇编。
v如此进行,直至汇编无错误,得到目标文件为止。
3.连接
v汇编产生的目标文件(.obj)并不是可执行的程序,还要用连接程序把它转换为可执行的EXE文件。
连接过程如下:
▪在DOS状态下,输入命令:
LINKMYFILE.OBJ(回车),即可完成连接。
▪与汇编过程类似,如果连接过程中出错,那么程序会在屏幕上显示提示信息。
此时,需要对源程序进行查错、修改,然后再进行汇编、连接,直至连接无错误,得到可执行文件为止。
4.程序运行
v在DOS提示符下输入可执行程序的文件名即可运行程序。
若程序能够运行但不能得到预期结果,则就需要检查源程序,改错后再汇编、连接、运行。
5.程序调试
v在程序运行阶段,有时不容易发现问题,尤其是碰到复杂的程序更是如此,这时就需要使用调试工具进行动态查错。
常用的动态调试工具为DEBUG。
三、运行调试
vDEBUG是为汇编语言设计的一种调试工具,它通过单步、设置断点等方式为汇编语言程序员提供了非常有效的调试手段,它可以直接调试COM文件和EXE文件。
vDEBUG状态下的所有数据都采用十六进制形式显示,无后缀H。
1.DEBUG的运行
v在DOS状态下,输入下列命令之一,就可以进入DEBUG调试状态。
命令一:
DEBUG↙(回车)
格式二:
DEBUG可执行文件名↙(回车)
v进入DEBUG调试状态后,将显示提示符“-”,此时,可输入所需的DEBUG命令。
2.DEBUG的主要命令
(1)显示内存单元内容的命令D
v格式为:
-D[地址]或-D[范围]
v说明:
上面格式中的“-”符号是DEBUG的提示符,下同。
v例如,显示指定范围(DS:
100~DS:
1FF)内存单元内容的命令是:
-D10010F
v这里没有指定段地址,D命令自动显示DS段的内
(2)修改内存单元内容的命令E
v格式一:
用给定内容代替指定范围的单元内容
-E地址内容表
▪例如,-EDS:
100F358595A8D
v格式二:
逐个单元相继地修
-E地址
▪例如:
▪-EDS:
100↙:
▪18E4:
010089.78↙
(3)检查和修改寄存器内容的命令R
v格式一:
显示CPU内部所有寄存器内容和标志寄存器中的各标志位状态
-R
v格式二:
显示和修改某个指定寄存器内容
-R寄存器名
▪例如:
-RAX
v格式三:
显示和修改标志寄存器内容
-RF
(4)运行命令G
v格式为:
-G[=地址1][地址2[地址3…]]
v其中,地址1指定了运行的起始地址,后面的均为断点地址。
当指令执行到断点时,就停止执行并显示当前所有寄存器及标志位的内容和下一条要执行的指令。
(这是随便修改后得到的值)
(这是从新启动,这几用-g命令得到的值)
(5)跟踪命令T
v格式一:
逐条指令跟踪
-T[=地址]
v该命令从指定地址起执行一条指令后停下来,显示所有寄存器及标志位的内容。
若未指定地址,则从当前的CS:
IP开始执行。
v格式二:
多条指令跟踪
-T[=地址][值]
v该命令从指定地址起执行n条指令后停下来,n由[值]确定。
(6)汇编命令A
v格式为:
-A[地址]
v该命令允许输入汇编语言语句,并能把它们汇编成机器代码,相继地存放在从指定地址开始的存储区中。
必须注意:
输入的数字均默认为十六进制数。
v5.5.3运行调试-DEBUG的主要命令
(7)反汇编命令U
v格式一:
从指定地址开始,反汇编32字节
-U[地址]
v格式二:
对指定范围内的存储单元进行反汇编
-U[范围]
(8)执行命令P
v格式为:
-P[=地址][指令数]
▪该命令控制CPU执行指定地址处的指令。
若指定了指令数,则CPU执行从指定地址开始的若干条指令。
若未指定地址和指令数,则CPU执行由(CS:
IP)指定地址处的一条指令。
vP命令与T命令的差别在于P命令把子程序调用(CALL)、重复字符串指令(REP)或软件中断(INT)当成一条指令来执行,简化了跟踪过程。
(9)退出DEBUG命令Q
v格式为:
-Q
v该命令退出DEBUG程序,返回DOS。
四、运行调试-DEBUG使用说明
①在DEBUG中的提示符“-”下才能输入命令,在按回车键后,该命令才开始执行。
②命令是单个字母,命令和参数的大小写可混合输入。
③命令和参数、参数和参数之间要用空格、逗号或制表符等分隔。
④可以用“段值:
偏移量”的形式来表示地址,也可以用段寄存器来代表“段值”。
例如,1000:
0,DS:
10,CS:
30等。
⑤范围:
用来表示地址范围,从哪个地址开始,到哪个地址结束。
它有两种表示方式。
v地址地址——前者表示起始地址,要用“段值:
偏移量”来表达,后者表示终止地址,只用“偏移量”来表示。
v地址长度——前者表示起始地址,要用“段值:
偏移量”来表达,后者表示该区域的大小,用字母“L”开头的数值来表示。
▪例如:
▪100:
50100
▪100:
50L100
⑥当命令出现语法错误时,将在出错位置显示"^Error"。
⑦可用组合键Ctrl+C或Ctrl+Break来终止当前命令的执行,还可用组合键Ctrl+S来暂停屏幕显示(当连续不断地显示信息时)。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 邮电 汇编语言 上机 过程
![提示](https://static.bdocx.com/images/bang_tan.gif)