《汇编语言程序设计》-相伟-电子教案第10章.pptVIP

《汇编语言程序设计》-相伟-电子教案第10章.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
21世纪高等院校规划教材 ;第十章 模块化程序设计;本章学习目标;10.1 概述; 模块的划分与设计可参考如下规则: ① 一个模块既不能过大,也不能过小。过大则模块的通用性较差,过小则会造成时间和空间上的浪费。 ② 力求使模块具有通用性, 通用性越强的模块利用率越高。 ③ 各模块间就在功能上、逻辑上相互独立,特别应避免用转移语句在模块间转来转去。 ④ 模块间的接口应该简单,要尽量减少公共符号的个数,尽量不共用数据存储单元。;采用模块化程序设计的优点: ① 容易把复杂的问题分解成一系列简单问题,便于解决实际问题。 ② 单个模块容易编写、查错、调试。 ③ 单个模块容易重复使用,对一些经典模块可以编写成标准模块供以后使用。 ④ 程序员可以直接利用现有的模块,提高工作效率。 ⑤ 软件运行之后的维护方便。;10.2 模块命名与装???;1.模块命名伪指令;2.段定义伪指令;① 定位属性;各个定位属性的意义如下:;② 组合属性;各个组合属性的意义如下:;PUBLIC 表示应将本段与其它模块中的同名、同‘类别’段按各模块连接的顺序相邻地连接在一起,组成一个物理段,但该段大小不能超过64K。一般情况下,各个模块的数据段、代码段都分别定义成同名、同‘类别’且组合属性为PUBLIC的段,以便使连接后生成的文件只有一个数据段、一个代码段。;STACK 与PUBLIC一样,表示本段与其它模块中的同名、同‘类别’段按各模块连接的顺序相邻地连接在一起,组成一个物理段,该段大小也不能超过64K。但与PUBLIC不同的是,该段作为堆栈段。一般情况下,各个模块的堆栈段也都定义成同名、同‘类别’且组合属性为STACK的段,以便使连接后生成的文件只有一个堆栈段。;COMMON 连接程序为本段和同名、同‘类别’的其他段指定相同的段地址,即将本段与这些段相覆盖,段的长度取决于最长的具有COMMON属性的段的长度。;AT 表达式 连接程序将把本段装在表达式的值所指定的段地址上。使用这个组合属性可以很方便地实现在某一固定存储区(如ROM区或中断向量区)内的固定偏移地址处定义标号或变量,这样源程序就能以标号和变量的形式访问这些固定的存储单元。;MEMORY:连接程序将本段定位在被连接在一起的其它所有段之上(即安排在最高地址上)。如果有几个段都选择MEMORY组合属性,则宏汇编程序将把遇到的第一段处理为MEMORY段,而其它段都被处理为COMMON段。;③ ‘类别’属性; 通常为使程序简洁,约定数据段的‘类别’ 属性取名为‘DATA’,附加数据段的‘类别’ 属性取名为‘EXTRA’,堆栈段的‘类别’ 属性取名‘STACK’,代码段的‘类别’ 属性取名为‘CODE’。;10.3 模块通信;1.局部符号;2.公共符号;PUBLIC伪指令。 指令格式: PUBLIC 符号 [ ,┅ ] 功能:用来说明公共符号。 其中符号可以是符号常量、变量、标号、过程名。但是符号常量的值为实数或者是超过2个字节的整数时不能作为公共符号使用。[ ,┅ ] 表示允许在一条PUBLIC伪指令中说明多个公共符号。;3.外部符号;EXTRN伪指令。 指令格式: EXTRN 符号:类型 [ ,┅ ] 功能:用来说明外部符号及其类型。 其中符号可以是符号常量、变量、标号、过程名。类型必须与该符号在另一个模块中定义的类型一致。[ ,┅ ] 表示允许在一条EXTRN伪指令中说明多个外部符号。;外部符号的类型如下: ① 标号、过程名取NEAR或FAR。 ② ??量取BYTE、WORD或DWORD。 ③ 符号常数取ABS。;10.4 模块化程序设计举例;小结

文档评论(0)

汪汪队 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档