单片机课复习讲述.ppt

  1. 1、本文档共116页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机课复习讲述

第3章 微机系统应用程序设计 按照语言的结构及其功能可以分为三种: 1.机器语言:机器语言是用二进制代码0和1表示指令和数据的最原始的程序设计语言。 2.汇编语言:在汇编语言中,指令用助记符表示,地址、操作数可用标号、符号地址及字符等形式来描述。 3.高级语言:高级语言是接近于人的自然语言,面向过程而独立于机器的通用语言。 第3章 微机系统应用程序设计 3.1汇编语言程序设计 3.1.1 汇编语言语句格式及伪指令 以助记符书写的指令系统,就是计算机的汇编语言。每一条指令就是汇编语言的一条语句。 第3章 微机系统应用程序设计 2.汇编语言的语句格式 各种汇编语言的语法规则是基本相同的,且具有相同的语句格式,现结合MCS-51汇编语言作具体说明。 MCS-51汇编语言的语句格式表示如下: [标号]:操作码 [操作数];[注释] 即一条汇编语句是由标号、操作码、操作数和注释四个部分所组成。其中方括号括起来的是可选择部分,可有可无,视需要而定。 第3章 微机系统应用程序设计 3.伪指令 用汇编语言编写的程序通常需经过机器汇编变成机器码才能被执行。为了对源程序汇编,在源程序中应有向汇编程序发出的指示信息,告诉它应该如何完成汇编工作。这一任务是通过伪指令来实现的。 伪指令是程序员发给汇编程序的命令,也称汇编命令或汇编程序控制指令。只有在汇编前的源程序中才有伪指令。 第3章 微机系统应用程序设计 1.分析问题,建立数学模型 2.选择适当的算法 3.程序结构的设计及绘制流程图 4.分配内存单元,编制汇编语言程序 5.调试程序 第3章 微机系统应用程序设计 3.1.3 程序设计结构 程序的基本算法结构有3种:顺序结构、分支(选择)结构和循环结构。 第3章 微机系统应用程序设计 基本结构汇编语言程序设计实例: 1.顺序结构程序设计 例1:单字节压缩BCD码转换成二进制码子程序。 解:设两个BCD码d1、d0表示的两位十进制数压缩存于R2,其中R2高4位存十位,低4位存个位,要把其转换成纯二进制码的算法为:(d1d0)BCD=d1×10+d0。实现该算法所编制的参考子程序如下: 第3章 微机系统应用程序设计 入口:待转换的BCD码存于R2。 出口:转换结果(8位无符号二进制整数)仍存R2。 BCD2B: ORG 2000H MOV A,R2 ;A(A)←(d1d0)BCD ANL A,#0F0H ;取高位BCD码d1 SWAP A ;(A)=0d1H MOV B,#0AH ;(B)←10 MUL AB ;d1×10 MOV R3,A ;R3暂存乘积结果 MOV A,R2 ;A(A)←(d1d0)BCD ANL A,#0FH ;取低位BCD码d0 ADD A,R3 ;d1×10+d0 MOV R2,A ;保存转换后结果 RET ;子程序返回 第3章 微机系统应用程序设计 2.分支(选择)结构程序设计 在编写分支程序时,关键是如何判断分支的条件。在MCS—51单片机指令系统中,有JZ(JNZ)、CJNE、JC(JNC)及JB(JNB)等丰富的控制转移指令,它们是分支结构程序设计的基本,可以完成各种各样的条件判断、分支。 4.3.2 分支程序 分支程序的基本形式 分支程序有三种基本形式 第3章 微机系统应用程序设计 例2:设变量X存放在VAR单元中,函数Y存在FUNC单元。编写按照下式要求给Y赋值的程序。 1 X>0 Y= 0 X=0 -1 X<0 解:由于X为有符号数,因此可以根据它的符号位来决定其正负。判别符号位是0还是1,可利用JB或JNB指令;而判别X是否为0,则可直接用累加器判零指令JZ。完成本例题任务的程序流程框图是由顺序结构加分支结构组成的,并且在分支结构中又嵌套了另一个分支结构,从而形成了三分支而归一的流程,如图3-4所示。 第3章 微机系统应用程序设计 第3章 微机系统应用程序设计 程序清单: BR1: ORG 2000H MOV A,VAR ;取出X送A JZ COMP ;若X=0则转移到COMP JNB ACC.7,POSI ;若X>0则转移到POSI MOV A,#0FFH ;若X<0则A=-1 SJMP COMP ;转分支结构出口 POSI: MOV A,#01H ;X>0时A=1 COMP: MOV FUNC,A ;存函数Y值 HERE: AJMP HERE ;结束程序 第3章 微机系统应用程序设计

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档