单片机原理与接口技术+11233 第4章.pptVIP

  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文档。上传文档
查看更多
第4章 MCS-51单片机汇编语言程序设计 ? 知识点 汇编语言指令的构成 汇编语言程序设计的步骤 汇编语言程序设计的结构 ? 技能点 会用汇编语言编写顺序结构,分支结构和循环结构的程序 ? 重点与难点 汇编语言编写程序的步骤 分支结构和循环结构程序的编写 第4章 MCS-51单片机汇编语言程序设计 4.1 汇编语言源程序 4.2 汇编语言程序的设计步骤 4.3 汇编语言程序的结构 4.4 典型问题程序设计举例 4.1 汇编语言源程序 汇编语言是汇编语言语句的集合,是一种面向机器的程序设计语言,故有时也称为符号语言。汇编语言的每条指令都有明显的特征,容易记忆,英文含义明确,容易理解,编制程序比较方便。单片机是面向控制的微机系统,多采用汇编语言作为程序设计语言。 所谓汇编语言程序设计,就是使用汇编语言编写计算机程序,称为汇编语言源程序。 4.2 汇编语言程序的设计步骤 (1)分析问题 (2)确定算法 (3)设计程序流程图 (4)分配内存单元 (5)编写汇编程序 (6)上机调试程序 4.3 汇编语言程序的结构 在程序设计中,程序结构通常按照程序执行的方式分为三种基本结构:顺序结构 分支结构 循环结构。 顺序结构 顺序结构程序也叫简单程序结构,从第一条指令开始顺序执行,直到最后一条指令为止。它是构成较大,较复杂程序的最基本的结构。 第4章 MCS-51单片机汇编语言程序设计 分支结构 在程序设计中,经常需要计算机对某种情况进行判断,然后根据判断的结果选择程序执行的流向,这就是分支程序。分支程序的特点就是程序中含有条件转移指令如JZ,JNZ,JC,JNC,JB,JNB,CJNE等。 循环结构 程序设计中,常常要求某一段程序重复执行多次,这时可采用循环结构程序。这种结构可大大简化程序,但程序执行的时间并不会减少。 4.3 汇编语言程序的结构 循环程序的结构 : 图4-1 两种循环结构 (a)先处理后判断 (b)先判断再处理 4.4 典型问题程序设计举例 【例4.1】设X,Y两个小于10的无符号整数分别存于片内30H,31H单元,试求两数的平方和并将结果存于32H单元。 编程思路:已知有两个,由于都是小于10的无符号整数,所以占用两个内存单元,并且可以知道两数的平方和小于100,故平方和的结果占用一个内存单元。在本题中题目已经告诉了程序的入口和出口,如果没有告诉,我们也应能判断出需要几个入口单元和出口单元。该题编程思路较简单,先求平方再求和就可以,属于顺序结构程序。 程序流程图如下: 4.4 典型问题程序设计举例 参考程序如下: ORG 2000H MOV A,30H ;取30H单元数据 MOV B,A ;将X送入B寄存器 MUL AB ;求X2,结果放在累加器A中 MOV R1,A ;将求平方后的结果暂存在R1寄存器中 MOV A,31H ;取31H单元数据 MOV B,A ;将Y送入B寄存器 MUL AB ;求Y2,结果在累加器中 ADD A,R1 ;求X2+ Y2 MOV 32H,A ;保存数据 SJMP $ END 4.4 典型问题程序设计举例 【例4.2】将单字节BCD码转换成二进制数 编程思路:例如要转换的BCD数是BCD,那么转换成的二进制数这个二进制数所表示的十进制数就是28。那么做这个题目的关键其实就是把十位数和个位数取出来。十位数其实就是BCD码的高四位,个位数是低四位。 4.4 典型问题程序设计举例 参考程序如下: MOV A,R2 ;R2是程序的入口,也就是放单字节BCD码的单元 ANL A,#0F0H ;屏蔽低4位,取高4位,也就是把十位数取出来 SWAP A ;把十位数取出来 MOV B,#10 MUL AB MOV R3,A ;乘积送R3保存 MOV A,R

您可能关注的文档

文档评论(0)

带头大哥 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档