利用堆栈实现单片机汇编语言的面向对象设计.pdfVIP

利用堆栈实现单片机汇编语言的面向对象设计.pdf

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
利用堆栈实现单片机汇编语言的面向对象设计.pdf

福建电脑 2003年第9期 利用堆旋实坝单恃相汇编语言的面向妁象i殳计 陈建平 (厦门科华恒盛股份有限公司.福建厦门361004) 【摘要】 以Motorola68HC08系列单片机指令为捌,刺用堆栈传递参数的方法,夼绍了在单片机汇墒语言 奴进行面向对象嫡程的方法。井运用于UPS的人机界面开发中。谊设计方珐增强了程序的模块化和站构化。缩短 开发周期和便于雏护。 【关键词】 面向对象单片机语言设计 MotomJa单片机不间断电潭(UPS) I、前富 类的定义可见图1,其中(a)给出一般形式,(b)和(c)给出 近年来面向对象的程序设计(00P)技术越来越得到人们的较为具体的实现形式。类的属性以伪指令给出是出于单片机的 青睐,在高缓语言的程序设计中普遍采用,如VisualC4-+等。在 单片机忙编语言级进行面向对象的设计未见报导,传统的f[编进行具体分配。图1(b)和(c)给出了类方法的两种不同表现形 语言设计是面向数据或过程的,这种设计方法中数据和过程是 式,其实质是一样的。要实现面向对象的程序设计,其核心是类 相互独立的,即忽略了数据和程序间的内在联系,无法真实反映 方法的形参是通过堆栈来传递的。对单片机汇编语言而言,类方 现实世界的问题本质。面向对象的设计是将实际问题分解成一 法就是子程序。当调用类方法向对象发进消息时,如执行JSR 些相互联系的事物(对象),并用描述事物的静态属性(数据)和(子程序)指令,CPU将下一条指令的地址人C,利用CPU的这一 对这些数据的操作《程序)这两个特征来描述对象。对象将数据 特点,我们可以将子程序所需的形参紧随调用子程序语句的后 和对数据的操作有机地构成一个整体,完整地反映问题的实 面,而在子程序的初始化中读人形参,并将C中的地址调整为正 质。面向对象设计其另一个优点是可通过对象类的继承实现软 确的出口地址来实现参数的传递。利用堆栈传递的形参可以是 件的重用。由于在高级语言环境下进行面向对象程序设计.其灵 常数、变量值传递、变量地址传递和子程序的人口地址,比传统 活的表现方式是通过编译程序来实现。而本文是在汇编语言级 的变量传递形参灵活多了。不同形参要采用不同的寻址方法获 程序设}}中,直接融人面向对象设计的概念,给出了类封装和类 得其正确昀值,如指针型菜单彤参可采用闯接寻址的指令获得 继承的实现方法,并以Motoroh68HC08系列单片机指令为例,真值。类的接口函数和方法均是通过堆栈来获得形参的。 给出具体的实现代码。最后以UPS的人机界面为设计实例,验证 声明了类以后就可以定义类的实例了,实例类似于一次子 这种汇编语言设计方法比传统设计方法具有更强的程序模块化 程序调用,实例中给出了类属性的真正映射的RAM空间。图2 和结构化,这给缩短了项目的开发周期.并便于维护。 2、设计思想 一次调用。为了类方法的正确调用和后续程序的正确执行,类的 类是对一组具有相同数据和相同操作的对象的描述,是对象 接口函数担当十分关键的角色。类接口函数的一种实现如图2。 调用类方法n的整个堆栈的变化是这样的: 的抽象概括。而对象是类的一个具体实例。类封装(Encapsulation)、 类继承(Inherilanee)和多态性(Polymorphism)是面向对象程序设计1)执行JSR 4-2】人c,PC指针指向 A_Cl∞s_Object,地址【n 的三个重要特性。下面给出类封装和类继承的汇编语言实现。一般 地址【1】; 来说,类由属性声明和方法声明两部分组成,屈性声明给出类的数 2)执行JSR 据,而方法声明给出操作数据的函数声明。由于缺少了高级语言编 Class_Object的接口函数人71地址: 译程序的解释,因此在类的声明中具有其特殊性,表现为属性和方 3)执行类接口函数,调整C指针使得当前的C指针指向地 法并没有存取

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档