找回密码
 注册
关于网站域名变更的通知
查看: 281|回复: 1
打印 上一主题 下一主题

[毕业设计] 利用堆栈实现单片机汇编语言的面向对象设计

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-8-4 11:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

8 t2 G6 h9 z5 s; _. G[摘要]以Molorola 68HCO8系列单片机指令为例,利用堆栈传递参数的方法,介绍了在单片机汇编语言
5 [$ z! l! n2 {4 m级进行面向对象编程的方法,并运用于UPS的人机界面开发中。该设计方法增强了程序的模块化和结构
5 B* h8 T( p) v3 A化,缩短开发周期和便于维护。
- |! u) ^& T$ }: U9 a" g[关键词]面向对象 单片机语言设计 Motorola 单片机不间断 电源(UPS)
- S1 _" `3 }( f, }. z# D1、前离
! U: |# j' N  O4 Z: N+ p近年来面向对象的程序设计(00P)技术越来越得到人们的
$ `1 E# ]! p3 K( Y3 J4 ~) M青睐,在高级语言的程序设计中普遍采用,如Visual C+ +等。在- Z7 h$ O% R( s* B( [
单片机汇编语言级进行面向对象的设计未见报导,传统的汇编, A" l* q! b) y$ r% V. I
语言设计是面向数据或过程的,这种设计方法中数据和过程是
3 p+ D  w+ R4 k1 r相互独立的,即忽略了数据和程序间的内在联系,无法真实反映' d8 B2 P' ^* d! Q+ {. H
现实世界的问题本质。面向对象的设计是将实际问题分解成- -, E( `+ B$ R# w* {
些相互联系的事物(对象),并用描述事物的静态属性(数据)和3 h: n% u% t0 r- D" j
对这些数据的操作(程序)这两个特征来描述对象。对象将数据
" F: c  r% P4 _" Y$ l和对数据的操作有机地构成一个整体,完整地反映问题的实: V: @8 j1 y: w% N! t
质。面向对象设计其另一个优点是可通过对象类的继承实现软! q6 C  F0 m3 ^# A6 U# y
件的重用。由于在高级语言环境下进行面向对象程序设计,其灵
; O) a- s  E0 U& q活的表现方式是通过编译程序来实现。而本文是在汇编语言级" d1 i$ _, L# O0 @5 Q( F
程序设计中,直接融人面向对象设计的概念,给出了类封装和类3 S& r8 X( ]1 \. S) d
继承的实现方法,并以Molorola 68HC08系列单片机指令为例,* L1 G! a- J% T6 j9 i0 n
给出具体的实现代码。最后以UPS的人机界面为设计实例,验证4 a* _4 I6 d. [( e8 r
这种汇编语言设计方法比传统设计方法具有更强的程序模块化
  U; u' ~  }2 n. T和结构化,这给缩短了项目的开发周期,并便于维护。  x6 H6 \7 z; C* r* j
2.设计思想# P' u) p# k" U8 b
类是对一-组具有相同数据和相同操作的对象的描述,是对象3 M4 Z8 q' t! C
的抽象概括。而对象是类的一个具体实例。类封装(Encapsulation)、
* P8 x/ l$ ~; D: v9 q( l8 h/ R类继承(Inheritance)和多态性(Polymorphism)是面向对象程序设计
, @4 t, m/ H- y1 R3 i! }的三个重要特性。下面给出类封装和类继承的汇编语言实现。-般- d8 m" b( d; P3 d& X% ?& ]
来说,类由属性声明和方法声明两部分组成,属性声明给出类的数1 N8 ~+ O# v5 R+ z) Z8 F% G7 p
据,而方法声明给出操作数据的函数声明。由于缺少了高级语言编
5 J. U7 \" h/ S9 b2 P. m译程序的解释,因此在类的声明中具有其特殊性,表现为属性和方
0 S' @! o, y) ]3 q) D法并没有存取控制(高级语言中的存取控制有私有、保护和公有三
: D( f# K5 o% I9 s* o# B% a8 x种),这里我们规定类的属性的存取控制是在类及其派生类中可以, B0 i, @& p5 g. O; A# C! m
访向,外界操作类的属性只能通过类的方法进行,而且为了定义类
/ u- \5 e# r; X! K0 e9 |  @, A实例,对类属性均定义为指针型变量。在类定义中,我们还需给出
, V/ u4 `  s* l9 F- Z( B类的接口函数,这也是一个特别之处。4 a. c2 }4 ?0 {/ i
3 i7 x! B, c4 l1 t
; O! n4 f3 u/ |5 R
$ r  K0 v8 ?. `9 Y
附件下载:
游客,如果您要查看本帖隐藏内容请回复
3 ^$ d4 _- ?+ {; u
9 D" D, n/ ~* h6 b

该用户从未签到

2#
发表于 2020-8-4 11:28 | 只看该作者
由于在高级语言环境下进行面向对象程序设计,其灵活的表现方式是通过编译程序来实现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-25 22:30 , Processed in 0.125000 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表