单片机魏.ppt

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

复习: MCS-51单片机的控制转移指令有以下类型: 无条件转移:无需判断,执行该指令就转移到目的地址。 条件转移:需判断标志位是否满足条件,满足条件转移到目的地址,否则顺序执行。 绝对转移:转移的目的地址用绝对地址指示,通常为无条件转移。 相对转移:转移的目的地址用相对于当前PC的偏差(偏移量)指示,通常为条件转移。 长转移或长调用:目的地址距当前PC 64KB地址范围内。 短转移或短调用:目的地址距当前PC 2KB地址范围。 根据程序可知 A=10+9+8+7+6+5+4+3+2+1=55=37H 试说明以下一段程序运行后A中的结果。 MOV 23H,#0AH CLR A LOOP:ADD A,23H DJNZ 23H,LOOP SJMP $ 第三章 汇编语言程序设计 §3-1 汇编语言程序的基本结构及应用举例 程序设计的几点启示: 1.整体构思 2.构建整体流程框图 3.结构合理,流程清晰,简单明了 4.局部模块化 为什么要用流程图? 1.符合人进行逻辑思考得习惯 2.计算机从根本来说,没有任何逻辑性,你必须告诉它,先做什么,后做什么,遇到什么情况由该做什么,等等 3.流程图设计本身是一个逐步求精的过程,最终将任务划分为若干能由机器指令时显得小模块 例1:将20H单元的两个压缩BCD码拆开变成ASCⅡ码,存入21H,22H单元 开始 20H A 10H B A/B B+30H B B 22H A+30H A A 21H 结束 程序设计的基本步骤: 1.题意分析 2.画出流程图 3.分配内存及端口 4.编制源程序 5.仿真、调试程序 6.固化程序 例2:有两组BCD码(1183H和5678H)分别存放在23H,22H单元和33H,32H单元,求它们的和并送入43H、42H单元中去 开始 22H A 32H+A A 十进制调整 A 42H 23H A 33H+A A 十进制调整 A 43H 散转程序:是指通过修改某个参数后,程序可以有三个以上的流向,多用于键盘程序 常用的指令: JMP @A+DPTR,该指令是把16位数据指针DPTR的内容与累加器A中8位无符号数相加,形成地址,装入程序计数器PC,形成散转的目的地址。 例:根据R7的内容,转向各自对应的操作程序。(R7=0,转入OPR0,R7=1,转入OPR1…..R7=n转入OPRn) JUMP1:MOV DPTR ,#JPTAB1 MOV A,R7 ADD A,R7 JNC NOAD INC DPH NOAD: JMP @A+DPTR JPTAB1: AJMP OPR0 AJMP OPR1 AJMP OPR2 AJMP OPRn 例:设计延时1秒的子程序(晶振为12MHz) DELAY: MOV R2, #10 DEL3:MOV R3,#200 DEL2: MOV R4,#125 DEL1: NOP NOP DJNZ R4, DEL1 DJNZ R3, DEL2 DJNZ R2, DEL3 RET 例:编程实现P1口连接的8个LED显示方式如下:从P1.0到P1.7的顺序,依次点亮其连接的LED。 子程序的设计 子程序和运算程序是程序设计的两大支柱. 1 子程序的概念:完成确定任务,并能为其他程序反复调用的程序段.要求子程序在结构上具有通用性和独立性.例如:代码转换,运算程序等. 2.子程序调用、返回到主程序中的正确位置并接着执行主程序中的后续指令,主要通过采用堆栈技术。 子程序编写注意的问题 子程序调用:ACALL LCALL 子程序返回:RET 1.子程序第一条必须有标号.也就是入口地址的代号。 2.要有正确的传递参

文档评论(0)

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

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

1亿VIP精品文档

相关文档