单片机 第九课12_2.pptVIP

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机 第九课12_2

第九课 ;特点是程序中含有转移指令。 转移指令有分为无条件转移和有条件转移。 有条件分支转移程序按结构类型来分,又分为单分支转移结构和多分支转移结构。;4.3 汇编语言实用程序设计-分支转移程序设计;4.3 汇编语言实用程序设计-分支转移程序设计;有条件转移指令通常可以完成单分支转移;例4.两个无符号数比较;(2)分支程序设计;图 两个无符号数比较流程图 ; ORG 1000H CLR C ;清CY为零 MOV A,40H ;取第一个数送A SUBB A,41H ;两数比较 JNC LED0 ;CY=0,转至LED0 CLR P1.1 ;CY=1,(40H)<(41H),点亮P1.1 LED LED0: CLR P1.0 ;CY=0,40H≥(41H),点亮P1.0 LED FINISH: RET ; ORG 0000H MOV A,40H ;取40H单元数据送A CJNE A,41H,COMP ;两数比较 COPM: JNC LED0 ;相等后的判别 CLR P1.1 ;CY=1,(40)<(41H) ;点亮P1.1;连接的LED SJMP FINISH ;跳转到结束 LED0: CLR P1.0 ;CY=0,40H≥(41H), ;点亮P1.0连接的LED FINISH: SJMP $ END;例4-10 求符号函数的值。程序框图如图4-6所示。;读P81,注意其中的转移指令AJMP NEGT;多分支转移结构;多分支转移结构;≠00?; ORG 00H ljmp start org 0030h START: SETB P1.0 SETB P1.1 MOV A,P1 ANL A,#03H CJNE A,#00,L1 MOV P1, SJMP START L1: CJNE A,#01,L2 MOV P1, SJMP START L2: CJNE A,#02,L3 MOV P1, SJMP START L3: MOV P1, SJMP START END;开始 ;例4-11 根据寄存器R2的内容,转向各个处理程序PRGx (x=0~n) (R2)=0,转PRG0 (R2)=1,转PRG1 ┇ (R2)=n, 转PRGn; ORG 00H ljmp start org 0030h START: SETB P1.0 SETB P1.1 MOV A,P1 ANL A,#03H RL A MOV DPTR,#TABL JMP @A+DPTR TABL: AJMP CS0 AJMP CS1 AJMP CS2 AJMP CS3;4.3.7 循环程序设计;1.循环初始化 循环初始化程序段用于完成循环前的的准备工作。例如,循环控制计数初值的设置、地址指针的起始地址的设置、为变量预置初值等。 2.循环处理 循环程序结构的核心部分,完成实际的处理工作,是需反复循环执行的部分,故又称循环体。这部分程序的内容,取决于实际处理问题的本身 3.循环控制 在重复执行循环体的过程中,不断修改循环控制变量,直到符合结束条件,就结束循环程序的执行。循环结束控制方法分为循环计数控制法和条件控制法 4.循环结束 这部分是对循环程序执行的结果进行分析、处理和存放。;二、循环结构的控制 图4-8是计数循环控制结构,图4-9是条件控制结构。 ;1.计数循环结构;ABC: MOV R7,#30 MOV R0,#50H CLR A LOOP: ADD A,@R0 INC R0 DJNZ R7,LOOP MOV B,A RET;ADD1: MOV R2,#n ;加法次数n送R2 MOV R3,#0 ;R3存放和的高8位,初始值为0 MO

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档