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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

: F, v- i* J1 U0 Z# Q; v1 y[摘要]以Molorola 68HCO8系列单片机指令为例,利用堆栈传递参数的方法,介绍了在单片机汇编语言5 L: d5 l% S! K: y' A6 f# J" {/ a
级进行面向对象编程的方法,并运用于UPS的人机界面开发中。该设计方法增强了程序的模块化和结构
6 G8 _% X4 k7 C$ K. Y$ d. n3 T化,缩短开发周期和便于维护。1 q; @* @1 u9 p0 Z
[关键词]面向对象 单片机语言设计 Motorola 单片机不间断 电源(UPS)
- {; K! _* A( D7 k0 n* T1、前离& G8 ]% `  Y/ t& E- ^! S
近年来面向对象的程序设计(00P)技术越来越得到人们的
4 I, p# c0 e$ s2 L1 @青睐,在高级语言的程序设计中普遍采用,如Visual C+ +等。在
+ d. X& ^8 A' Q5 U, }" g单片机汇编语言级进行面向对象的设计未见报导,传统的汇编
9 a6 m* c' e( }2 ?# F9 k  `语言设计是面向数据或过程的,这种设计方法中数据和过程是
% s2 R$ A" O" T' z' s! q* \相互独立的,即忽略了数据和程序间的内在联系,无法真实反映
, B8 Z1 c* ^( Z( D7 K8 Y+ R现实世界的问题本质。面向对象的设计是将实际问题分解成- -
3 f& j0 B8 C; ~* _些相互联系的事物(对象),并用描述事物的静态属性(数据)和
; g+ J; I$ K/ j+ k) r对这些数据的操作(程序)这两个特征来描述对象。对象将数据
8 ]. i- K6 ^& X: ~和对数据的操作有机地构成一个整体,完整地反映问题的实0 n9 u/ O8 O6 Q5 \
质。面向对象设计其另一个优点是可通过对象类的继承实现软( @  P0 y' p! O0 O) N
件的重用。由于在高级语言环境下进行面向对象程序设计,其灵
9 K  |/ o9 O8 H6 S3 H活的表现方式是通过编译程序来实现。而本文是在汇编语言级
# m9 n8 P1 T/ Y9 \/ ]$ h) g3 G5 e程序设计中,直接融人面向对象设计的概念,给出了类封装和类
& K7 r# _' {" C$ Q' e继承的实现方法,并以Molorola 68HC08系列单片机指令为例,
8 y# c  i1 G, Y) L  N  O. C$ b8 X+ [给出具体的实现代码。最后以UPS的人机界面为设计实例,验证' A" S& ^6 {2 ^6 k/ G
这种汇编语言设计方法比传统设计方法具有更强的程序模块化
# G, q6 a/ L$ C' K, A和结构化,这给缩短了项目的开发周期,并便于维护。& t/ z. ^) O! c$ y! z6 F5 n1 l. Q
2.设计思想
: [7 o4 s& L( i$ i! }5 B# H类是对一-组具有相同数据和相同操作的对象的描述,是对象% }' N$ n, L# R4 v3 l9 ?* e
的抽象概括。而对象是类的一个具体实例。类封装(Encapsulation)、. _% O2 D! z; ]+ v" J9 S5 B/ Z
类继承(Inheritance)和多态性(Polymorphism)是面向对象程序设计
  L0 z. t( V* N0 ^: e/ R* }的三个重要特性。下面给出类封装和类继承的汇编语言实现。-般: V1 o$ o0 U! I  x# C, B
来说,类由属性声明和方法声明两部分组成,属性声明给出类的数
- f& e0 {5 L. J据,而方法声明给出操作数据的函数声明。由于缺少了高级语言编* ^2 D2 ~8 c" S& v. P
译程序的解释,因此在类的声明中具有其特殊性,表现为属性和方
- k- W7 C0 O$ }( b法并没有存取控制(高级语言中的存取控制有私有、保护和公有三( i4 K! \( R# i0 |
种),这里我们规定类的属性的存取控制是在类及其派生类中可以6 F2 K* t0 m. F& E, }8 R+ Y* r
访向,外界操作类的属性只能通过类的方法进行,而且为了定义类
& u! L, x: V8 s0 R8 s实例,对类属性均定义为指针型变量。在类定义中,我们还需给出1 f9 ^4 C7 l+ |9 O9 p% {5 D
类的接口函数,这也是一个特别之处。
- J6 E# ]4 c/ w9 Q# w4 V7 F
- O& `  n% Y# C& Q- m0 w% A7 }7 a2 p- m( l2 H0 `
- b+ r7 R% d; S3 e4 E+ K
附件下载:
游客,如果您要查看本帖隐藏内容请回复

- ]4 `$ H4 `  l) p6 E8 T' h/ w; c- ]: Y% R. d

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-24 01:39 , Processed in 0.125000 second(s), 26 queries , Gzip On.

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

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

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