黄强 汇编 第十章汇编语言程序设计上机指导

上传人:mg****85 文档编号:49683217 上传时间:2018-08-01 格式:PPT 页数:41 大小:601.50KB
返回 下载 相关 举报
黄强  汇编 第十章汇编语言程序设计上机指导_第1页
第1页 / 共41页
黄强  汇编 第十章汇编语言程序设计上机指导_第2页
第2页 / 共41页
黄强  汇编 第十章汇编语言程序设计上机指导_第3页
第3页 / 共41页
黄强  汇编 第十章汇编语言程序设计上机指导_第4页
第4页 / 共41页
黄强  汇编 第十章汇编语言程序设计上机指导_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《黄强 汇编 第十章汇编语言程序设计上机指导》由会员分享,可在线阅读,更多相关《黄强 汇编 第十章汇编语言程序设计上机指导(41页珍藏版)》请在金锄头文库上搜索。

1、汇编语汇编语 言程序设计设计高等教育出版社10.1 汇编语言程序设计上机概述 10.2 汇编程序 10.3 连接程序 10.4 调试工具v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社10.1 汇编语言程序设计上机概述 10.1.1 上机环境为了对包括Pentium指令在内的汇编语言的源程序文件进行汇编, 应有一台Pentium以上的计算机。操作系统使用DOS 5.0以上版本或在 Windows操作系统命令提示符下进行。编辑程序可用EDIT等。MASM 5.0以上宏汇编系统,包括: (1) MASM:汇编程序 (2) LINK:连接程序 (3) CREF:索引程序

2、 (4) LIB:库管理程序用DEBUG调试程序时,假定后面的内容假定在C盘上建立了MASM子 目录,且上述程序都在该目录中或建立了相应路径。v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社10.1.2 汇编语言源程序上机操作步骤从编写好的汇编语言源程序到计算机可以运行这个程序,中间要经历 一些步骤。可以归纳如下:1编辑源文件根据给定的任务编写程序。一般在编辑过程中总会有错误产生,因此 还要进行人工检查、重新编辑修改,直到所编辑的源程序认为无误为止。 最后将它以一个源程序文件(.ASM文件)存盘。2汇编源程序文件由编辑程序所建立的.ASM文件只是一个文本文件,计算

3、机无法直接运 行该文件。需要经过汇编程序的汇编,使其转换为目标代码文件。它是通 过调用宏汇编MASM程序完成这一汇编操作的。汇编程序还将对源程序进行 语法检查,如发现有错,将给出错误原因。程序设计者可根据它分析和修 改源程序,并再经过汇编,直到无误为止,此时得到的是一个目标文件( .OBJ)。v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社3目标文件目标文件为浮动的相对地址,是不可以直接执行的。必 须经过连接,把有关模块连接在一起构成统一的编址,从而 为运行提供条件。在运行时,装填到内存中的具体位置由段 地址来确定。连接过程是由LINK连接程序实现的。此时得到 的

4、是一个可执行文件(.EXE文件)。4运行可执行文件得到该可执行文件后,就可以直接调用运行该可执行文 件。如果程序设计正确,则可获得正确的运行结果。但对于 一个较大的程序,往往会有很多设计上的逻辑错误,不可能 一次就得到正确的结果。返回本章首页v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社10.2.1汇编程序的类别经过编辑程序所建立的汇编语言源程序,是不能直接在计 算机上运行的,必须经过汇编、连接后才能运行。目前使用的 汇编程序中,主要有Microsoft公司的宏汇编MASM5.0和 MASM6.11及Borland公司的Trubo Assember5.0等版本,

5、它们的 基本功能是相似的,但高版本功能更强一些。另外,MASM6.11 系统所提供的编程集成环境PWB将源程序的编辑、汇编、连接 和运行集成在一起,也是一种不错的选择。MASM5.0支持80386 以下CPU的指令集,以下以MASM5.0为例介绍汇编程序。 10.2 汇编程序 v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社10.2.2 汇编过程宏汇编程序是二次扫描的汇编程序,它两次从头到尾逐行扫描源程序完成汇 编过程。第一次扫描用来定义源程序每个行的相对位置。汇编程序中有一个软件 计数器,称为定位计数器或地址计数器LC(Location Counter)。当每个

6、段开始 时,LC复位(LC=0)。汇编程序在逐行扫描中,LC按每行指令的字节数进行计数 。读入一个源程序行后,先查看其是否为伪指令,若为伪指令则LC不计数,否则 将指令长度(指令字节数)送L。再检查此行语句是否有标号,若有则把标号写 到一个符号表中,并且把现行LC(即为上一条指令的计数结果)赋给标号且填入 符号表中,然后将 LC+LLC,形成下一条指令的地址,即这条指令在段中的相 对位置,称为段内偏移量。若语句没有标号则直接将 LC十LLC及其后的操作, 其它行按同样的方法处理,直至扫描到END指令时结束第一次扫描,这样通过第 一次扫描可将源程序中的标号、变量的偏移量等填进符号表中,从而构成并

7、得到 了各条指令的相对地址和一张符号表。在第一次扫描时还计算出了源程序机器码 的总长度,并可检查出一些语法错误,但不产生机器码。 v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社汇编程序的第二次扫描是把汇编指令翻译成机器码,它根 据汇编程序中的指令代码表找到汇编指令助记符对应的机器指 令操作码,再根据第一次扫描产生的符号表,将指令中的符号 操作数在符号表中查到,并找到其偏移值,从而将每条汇编指 令翻译成机器代码并写到目标程序文件中去。在第二次扫描时 ,还要进行语法检查,将第一次扫描时未检查到的语法错误查 出并显示。在第二次扫描后除了产生出目标程序文件(.OBJ)

8、外,还可根据需要产生列表文件(.LST)和交叉索引文件( .CRF)。v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社其中:目标程序文件其扩展名为.OBJ。在这个程序文件中, 操作码部分已变成了机器码,可由机器识别,但地址操作数部分 只是一个可浮动的相对地址,而不是内存中的绝对地址。列表文件其扩展名为.LST。此文件包含源程序及其注 释、地址和目标码(即汇编后的目标程序)。它们都是用ASCII码 表示的文本文件,需要时可用编辑程序将其打开以供查阅。交叉索引文件其扩展名为.CRF。交叉索引文件是用来 了解源程序中每个符号是在哪里定义的。哪些指令用到了这个符 号,给出

9、该指令的行号。交叉索引文件对较大的程序很有用,可 以用来帮助查错。要把交叉索引文件打印出来,必须用CREF程序 生成交叉索引列表文件,然后用编辑程序等查看。 v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社10.2.3 操作过程首先启动操作系统,假设MASM系统(以MASM5.0为例)已 预先装在硬盘的MASM子目录中。下面均以C盘上操作为例进行 说明。假设事先用编辑程序编辑的源程序为yfile.ASM,则汇 编过程如下:C:MASMmasm Microsoft (R) Macro Assembler Version 5.00 Copyright (C) Micr

10、osoft Corp 1981-1985,1987.All rights reserved. Source filename.ASM:Myfile Object filename.OBJ: Source listing NUL.LST: Cross-reference NUL.CRF: 51698+417454 Bytes symbol space free O Warning Errors O Severe Errors v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社宏汇编程序被调入以后,先显示版本号。然后依次提出 提示,请求用户回答。第一行提问被汇编的源文件

11、的名字,方括号内表示此文 件带有后缀.ASM(.ASM是该源程序文件的隐含扩展名),此 时应键入将要汇编的源程序文件的名字,并按回车键。第二行提问汇编后目标文件的名字,括号中的名字表示 约定的文件名(其文件名部分自动采用源程序文件名),若 采用这个名字则直接键入回车键,否则键入另起的名字。v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社第三行提问是否要建立列表文件。括号中的NUL为“空”的 意思,表示不建立列表文件。若要建立列表文件,则需键入文件 名,名字任选,也可同源程序文件名。但后缀必须为.LST,后缀 可由用户连同文件名一起键入,也可不键入,即自动采用隐含值

12、 。如果不需要建立列表文件,则在第三行提问后直接按回车键。第四行是询问是否要建立交叉索引文件,括号中的意义同第 三行,若不需交叉索引文件,可直接按回车键,否则键入交叉索 引文件名。v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社也可以直接用下面的命令进行汇编: C:MASMMASM Myfile 提示同上。v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社用EDIT编辑程序观看列表文件的操作步骤如下: C:MASMEDIT 文件名.LST汇编后,也可查看交叉索引文件,以了解源程序中的符号定义和引 用情况。其操作步骤如下: C:MASMC

13、REF Cref filename.CRF:交叉索引文件名 List filenamefilename.REF: C:MASMEDIT filename.REF在第一行提示下,打入汇编时在第四行询问时所键入的交叉索引文 件名。第二行提示,可直接回车,表示采用括号中的文件名。第三行的EDIT程序就可列出交叉索引的列表文件了。如果在汇编时没有要求产生交叉索引文件,当然也就无需用CREF产 生交叉索引文件了。返回本章首页v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社10.3.1 连接程序的作用由汇编程序生成的目标程序文件仍然不能执行,必须经过连 接程序LINK连接以后

14、,才能变成可执行文件。因为目标程序文件 中有些指令地址还未完全确定,因此仍未成为可以用操作系统装 入的程序形式。再者可能要将几个目标文件组合成一个功能更强 的实用文件,甚至要和某些高级语言的目标程序文件进行组合, 这些都要由连接程序LINK来完成。通过连接程序可将若干个目标 文件连接成一个地址可浮动的、可由操作系统装入程序对地址定 位的可执行文件。10.3 连接程序 v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社这里要注意的是:连接程序LINK并不仅是为汇编语言程序所 专用的。它作为Microsoft的80X86目标连接程序,可将宏汇编或 高级语言(例如C、PA

15、SCAL等)编译生成的目标文件连接在一起 ,成为一个可执行程序。并以后缀为.EXE的文件方式存盘。在操 作系统命令提示符下,可直接输入该文件名来执行这个程序。 v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社10.3.2 连接过程在连接之前,源程序必须通过汇编或编译成为目标文件。 在执行连接操作时,以一定的格式将这些目标文件与需要的库 文件一起提供给连接程序。连接程序将它们的代码和数据进行 组合,成为可执行文件。操作系统能够利用装入程序将可执行 文件加载到内存的适当位置,然后运行之。注意:连接程序 LINK只能处理在1MB地址以下运行的程序。 v第10章 汇编语言

16、程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社10.3.3 LINK的使用与操作LINK连接目标文件有两种常用的操作方式:会话方式命令方式不论在哪种操作方式下,若想停止连接程序的工作,可按 CTRL+C键来中断LINK程序的执行。v第10章 汇编语言程序设计上机指导汇编语汇编语 言程序设计设计高等教育出版社1会话方式首先在含有LINK程序的软盘插入软盘驱动器中,或预先将其 存在硬盘上。在操作系统命令提示符下键入LINK,连接程序就被 调入。LINK程序将显示有关信息并依次给出提示信息请用户逐行 回答。屏幕显示如下:C:MASMLINK Microsoft (R)Overlay Linker Version 3.60 Copyright (C)Microsoft Corp 1985-1987.All rights reserved. Object Modules .OBJ:myfile Run File MYFILE.EXE

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号