第10章_ppt.txt

大学汇编语言程序设计-相伟-课件PPT

收藏

资源目录
跳过导航链接。
大学汇编语言程序设计-相伟-课件PPT.zip
压缩包内文档预览:
预览图 预览图 预览图
编号:21836146    类型:共享资源    大小:11.91MB    格式:ZIP    上传时间:2019-09-06 上传人:QQ24****1780 IP属地:浙江
25
积分
关 键 词:
大学 汇编 语言程序设计 相伟 课件 ppt
资源描述:
大学汇编语言程序设计-相伟-课件PPT,大学,汇编,语言程序设计,相伟,课件,ppt
内容简介:
21世纪高等院校规划教材汇编语言程序设计相 伟 主编徐小平 李珍香 副主编中国水利水电出版社第十章模块化程序设计本章学习目标通过本章学习,读者应该掌握以下内容:模块的概念及设计模块之间的通信模块化程序设计方法10.1概述模块化程序设计是大型程序设计的常用方法,它是指按照要实现的功能把一个大型程序划分成多个模块,每个模块完成一个子功能,然后按模块来分配设计人员,由设计人员编制和调试各个模块程序,最后再把它们按照一定的调用关系组合起来,完成指定的功能。从汇编语言源程序的角度来看,一个模块就是一个以END语句作为结束标志的源程序。模块的划分与设计可参考如下规则: 一个模块既不能过大,也不能过小。过大则模块的通用性较差,过小则会造成时间和空间上的浪费。 力求使模块具有通用性, 通用性越强的模块利用率越高。 各模块间就在功能上、逻辑上相互独立,特别应避免用转移语句在模块间转来转去。 模块间的接口应该简单,要尽量减少公共符号的个数,尽量不共用数据存储单元。采用模块化程序设计的优点: 容易把复杂的问题分解成一系列简单问题,便于解决实际问题。 单个模块容易编写、查错、调试。 单个模块容易重复使用,对一些经典模块可以编写成标准模块供以后使用。 程序员可以直接利用现有的模块,提高工作效率。 软件运行之后的维护方便。10.2模块命名与装配在模块化程序设计中,一个程序通常由一个主模块和一个或多个子模块构成,当编写完所有模块的汇编语言源程序后,宏汇编程序需要对包括主模块在内的所有模块的源程序进行单独汇编,生成主模块的目标文件和各个子模块的目标文件,然后由连接程序将主模块和所有子模块的目标文件连接在一起构成一个可执行文件。1模块命名伪指令格式:NAME 模块名功能:给一个模块命名。通常作为一个模块的第一条指令。2段定义伪指令段名 SEGMENT 定位属性 组合属性 类别 段名 ENDS功能:定义程序中的一个逻辑段,并指定该逻辑段的属性。 定位属性定位属性是对该段的起始地址所提出的要求,即告诉连接程序,在将各个段装配在一起时,前一个段安排完后,下一个段将从一个什么样的地址开始存放。定位属性是规定好的,它们是:PARA、WORD、BYTE、PAGE,分别称为节地址、字地址、字节地址、页地址。各个定位属性的意义如下:PARA节地址。表示该段的存放开始地址是物理地址的最低4位为0的地址。定位属性省略时,表示PARA。在前面的例题中,程序中多数逻辑段的定位属性都被省略,说明采用了PARA属性。WORD 字地址。表示该段的存放开始地址是物理地址的最低1位为0的地址。BYTE字节地址。表示该段的存放开始地址可以是任何物理地址。PAGE页地址。表示该段的存放开始地址是物理地址的最低8位为0的地址。 组合属性组合属性用于向连接程序提供本段同其它段在连接时的组合关系。组合属性也是规定好的,有以下几种属性供选择,它们是:NONE、PUBLIC、COMMON、AT表达式、STACK、MEMORY。各个组合属性的意义如下:NONE表示本段与其它段逻辑上不发生关连,尽管在物理地址上可能相邻,但每个段都有自己的段首址,这是隐含的组合属性,可以省略。在前面学过的例题中,多采用这种组合属性。PUBLIC表示应将本段与其它模块中的同名、同类别段按各模块连接的顺序相邻地连接在一起,组成一个物理段,但该段大小不能超过64K。一般情况下,各个模块的数据段、代码段都分别定义成同名、同类别且组合属性为PUBLIC的段,以便使连接后生成的文件只有一个数据段、一个代码段。STACK与PUBLIC一样,表示本段与其它模块中的同名、同类别段按各模块连接的顺序相邻地连接在一起,组成一个物理段,该段大小也不能超过64K。但与PUBLIC不同的是,该段作为堆栈段。一般情况下,各个模块的堆栈段也都定义成同名、同类别且组合属性为STACK的段,以便使连接后生成的文件只有一个堆栈段。COMMON 连接程序为本段和同名、同类别的其他段指定相同的段地址,即将本段与这些段相覆盖,段的长度取决于最长的具有COMMON属性的段的长度。AT 表达式 连接程序将把本段装在表达式的值所指定的段地址上。使用这个组合属性可以很方便地实现在某一固定存储区(如ROM区或中断向量区)内的固定偏移地址处定义标号或变量,这样源程序就能以标号和变量的形式访问这些固定的存储单元。MEMORY:连接程序将本段定位在被连接在一起的其它所有段之上(即安排在最高地址上)。如果有几个段都选择MEMORY组合属性,则宏汇编程序将把遇到的第一段处理为MEMORY段,而其它段都被处理为COMMON段。 类别属性段名的类别 属性用于连接程序在装配时安排各个段的存放顺序。它是用单引号括起来的字符串,该字符串可以包括任何合法的字符。连接程序在装配时,将把类别相同、段名相同且组合属性为PUBLIC或STACK的段按连接时的顺序连续存放,组成一个的物理段,具有相同的段地址;而仅类别和段名相同的段将按连接时的顺序连续存放,但仍然是不同的段,每个段都有自己的段地址。通常为使程序简洁,约定数据段的类别 属性取名为DATA,附加数据段的类别 属性取名为EXTRA,堆栈段的类别 属性取名STACK,代码段的类别 属性取名为CODE。10.3模块通信模块化程序设计是按照程序的功能把程序划分成多个模块,按模块来编制程序的。尽管在划分模块时,使模块具有高的的独立性是划分模块的重要原则,但要使模块的功能完全独立是很难做到的,因此模块之间不可避免的要进行通信,以便在一个模块内访问另一个模块定义的符号(变量、标号、过程名、符号常数)。 1局部符号在一个模块内定义且在该模块内访问的符号称为局部符号,局部符号也称内部符号。如前面学习的汇编语言源程序都只有一个模块,也可以称为主模块。在那些源程序里定义的符号,都是在定义符号的源程序中访问的,因此它们都是局部符号。局部符号只要在模块内定义就可以访问,不需要额外的说明。2公共符号在一个模块内定义的符号,如果不仅可以在本模块内访问,也可以供其他模块访问,这样的符号称为公共符号。一个符号需要通过PUBLIC伪指令说明才能成为公共符号,这样其他模块才可以访问它PUBLIC伪指令。指令格式:PUBLIC 符号 , 功能:用来说明公共符号。其中符号可以是符号常量、变量、标号、过程名。但是符号常量的值为实数或者是超过2个字节的整数时不能作为公共符号使用。 , 表示允许在一条PUBLIC伪指令中说明多个公共符号。3外部符号在另一个模块内定义的符号,需要在本模块内访问,这样的符号称为外部符号。要在本模块内访问一个外部符号需要通过EXTRN伪指令将其说明为外部符号,否则,宏汇编程序在汇编这样的调用指令时,由于找不到对所用符号的定义,就会给出出错信息。EXTRN伪指令。指令格式:EXTRN 符号:类型 , 功能:用来说明外部符号及其类型。其中符号可以是符号常量、变量、标号、过程名。类型必须与该符号在另一个模块中定义的类型一致。 , 表示允许在一条EXTRN伪指令中说明多个外部符号。外部符号的类型如下: 标号、过程名取NEAR或FAR。 变量取BY
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:大学汇编语言程序设计-相伟-课件PPT
链接地址:https://www.renrendoc.com/p-21836146.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2025  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!