汇编语言程序的上机过程.ppt

汇编语言程序的上机过程.ppt

ID:51657332

大小:265.31 KB

页数:18页

时间:2020-03-27

汇编语言程序的上机过程.ppt_第1页
汇编语言程序的上机过程.ppt_第2页
汇编语言程序的上机过程.ppt_第3页
汇编语言程序的上机过程.ppt_第4页
汇编语言程序的上机过程.ppt_第5页
资源描述:

《汇编语言程序的上机过程.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、(一)汇编语言源程序上机处理过程(1)建立汇编语言的工作环境为能方便地编辑和处理汇编语言源程序,从而最终获得可执行程序文件,我们至少需要以下程序。1)文本编辑程序,例如记事本、写字板等2)汇编程序,例如MASM.EXE3)链接程序,例如LINK.EXE4)调试程序,例如DEBUG.EXE(2)建立ASM文件通过使用文本编辑程序(例如记事本、写字板等)建立一个后缀名为.ASM的汇编语言源程序文件。(3)使用MASM汇编程序产生OBJ文件使用汇编程序MASM对ASM源程序文件进行汇编,产生OBJ二进制目标文件。基本操作方法为:>MASM↙然后根据提示进行操作。汇编程序的输入文件是ASM文件,

2、其输出文件可以有以下三个。①OBJ二进制目标文件该文件是汇编操作的主要目的,是必需的。②LST列表文件该文件是ASCII文件,其内容包括以下两个部分。首先以源程序指令与目标机器指令相互对照的形式给出汇编结果。其次,LST清单的最后部分给出宏指令名表、段名表和符号表。宏指令名表本程序模块所定义的所有宏指令的名字和行数。段名表本程序模块所包含的所有逻辑段的段名、段的字节长度和段的属性(定位类型、组合类型和类别名)。符号表本程序模块所使用的所有标号、变量和过程的名字和属性(类型、段内偏移量和所属段),以及本程序模块使用EQU/=伪指令定义的所有符号的符号名、类型(NUMBER、TEXT、OPC

3、ODE等)和值。③CRF文件此文件用来产生交叉引用表REF。一般程序不需要建立此文件。如果需要建立交叉引用表,则还需要调用CREF.EXE文件如下。>CREFCRF文件名交叉引用表排列出了程序模块所定义的所有符号,每一行列出一个符号的定义行号(#)和引用行号。(4)使用LINK程序产生EXE文件MASM汇编程序产生出二进制目标文件(OBJ文件),但是OBJ文件并不是可执行文件,还必须使用连接程序LINK把OBJ文件转换为可执行的EXE文件。如果一个程序由多个程序模块组成,也应该使用LINK把它们连接在一起。操作方法如下。>LINK↙然后根据提示进行操作。LINK程序有两种类型的输入文件O

4、BJ和LIB。1)OBJ文件:需要进行连接的目标文件。2)LIB文件:程序中需要用到的库文件。LINK程序有两个输出文件。1)EXE文件:可执行文件。2)MAP文件:连接映像文件。该文件给出各个物理段在起始地址为00000H的地址空间中的分配情况。(5)执行程序>可执行文件名↙总结汇编程序具有以下作用①将指令性语句翻译为相应的机器代码指令。②确定标号、过程名和变量名在各自逻辑段内的偏移地址,这个偏移地址还不是这些名字的最终偏移地址。链接程序具有以下作用①在起始地址为00000H的地址空间中,安排所有逻辑段的空间位置,从而确定出所有物理段在这个地址空间中的段地址。②确定所有过程名、变量名和

5、标号的段内偏移地址。(二)DEBUG调式程序一、调用DEBUG程序格式:DEBUG可执行程序完整文件名功能:将可执行程序装入内存,并初始化DS、ES、SS、SP、CS和IP,如下图所示。例如:>debugstring.exe↙SS00FFH0000H程序段前缀区PSPINT20H指令低字节INT20H指令高字节┇┇PSP最后一个字节堆栈区第一个字节(用户程序第一个字节)┇堆栈区最后一个字节数据段区第一个字节┇数据段区最后一个字节SP栈底┇┇用户程序第一条指令┇用户程序第一条被执行的指令┇用户程序最后一条指令┇IPCS用户堆栈段区用户数据段区用户代码段区用户程序区DS、ES可用内存最低地址

6、区的小段边界二、DEBUG命令(1)反汇编命令格式1:U[地址]地址格式如下段基址:偏移地址功能:从指定地址开始,反汇编32个字节。说明:①如果缺省全地址,则默认全地址为CS:IP,但是如果连续使用缺省全地址的U命令进行反汇编,则从第二个U命令开始,连续从上一个U命令的最后一条指令的下一个单元开始反汇编32个字节。②如果缺省段地址,则默认为CS。使用反汇编命令显示实际程序,可以了解各条实际的程序指令和各个物理段在实际内存中的位置。格式2:U地址范围地址范围的格式如下[起始地址结束地址]或[起始地址L字节长度]功能:对指定范围内的内存单元进行反汇编。(2)运行程序命令格式:G[=地址1][

7、地址2][地址3]…功能:从[地址1]开始运行程序,直至断点[地址2]、[地址3]…。说明:①缺省所有地址时,从当前指令位置CS:IP开始运行程序,直至运行到当前指令位置。②缺省段地址时,默认当前代码段CS。(3)内存显示命令格式1:D[地址]功能:从指定地址开始,显示80H个字节的内存内容。格式2:D[范围]功能:显示指定地址范围内的内存内容。缺省段地址时,默认当前数据段DS。(4)内存修改命令格式1:E地址内容表功能:将内容表的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。