- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【例4.5】设内部RAM 60H和61H单元中存放两个无符号数,试比较它们的大小。将较小的数存放在60H单元,较大的数存放在61H单元中。 分析:这是一个简单分支程序,可以使两数相减,用JC指令进行判断。若CY=1,则被减数小于减数。 ORG 1000H START:CLR C ;0→CY MOV A,60H SUBB A,61H ;做减法比较两数 JC NEXT ;若(30H)小,则转移 MOV A,60H XCH A, 61H ;交换两数 MOV 60H,A NEXT: NOP SJMP $ END 【例4.6】将R2中的一位十六进制数转换为ASCII码,结果仍存放于R2中。 分析:数字0~9的ASCII码分别是30H~39H,英文大写字母A~F的ASCII码分别是41~46H。因此,若该十六进制数小于10,要转换为ASCII码应加30H,若该十六进制数大于10,则加37H。 ORG 1000H MOV A,R2 CJNE A,#0AH,L1 L1: JNC ADD37 ADD30:ADD A,#30H MOV R2,A SJMP FINISH ADD37:ADD A,#37H MOV R2,A FINISH:SJMP $ END 【例4.7】设变量x存入30H单元,求得函数y存入31H单元。按下式要求给y赋值: x+1 (10x) y= 0 (5≤x≤10) x-1 (x5) 分析:要根据x的大小来决定y值,在判断x<5和x10时,采用CJNE和JC以及CJNE和JNC指令进行判断。 程序如下: ORG 1000H MOV A,30H ;取X CJNE A,#5,NEXTl ;与5比较 NEXT1:JC NEXT2 ;X5,则转NEXT2 MOV R0,A ; INC R0 ;设10X,Y=X十1 CJNE A,#11,NEXT3 ;与1l比较 NEXT3:JNC NEXT4 ;x10,则转NEXT4 MOV R0, #0 ;5≤X≤10,Y=0 SJMP NEXT4 NEXT2:MOV R0,A DEC R0 ;X5,Y=X-1 NEXT4:MOV 31H,R0 ;存结果 SJMP $ END 4.2.4 循环程序设计 循环程序一般包括以下5部分: 初始化部分:循环程序的准备部分,把初始参数赋给控制变量。 循环处理部分:循环程序反复执行的部分,这是循环程序的实体。 修改部分:修改控制变量的值,为进入下一轮循环做准备。 控制部分:根据循环结束条件,判断循环是否结束。 结束部分:分析、处理及存放程序执行结果。 循环程序的结构一般由两种形式: 1.单循环程序设计 【例4.8】循环次数已知的单重循环。 在内部RAM的 20H~2FH连续16个单元中存放单字节无符号数。求这16个无符号数之和,并存入内部RAM 61H和60H中。 分析:这是重复相加问题,且事先知道循环次数,故采用计数器控制的循环程序设计方法。设用R0作加数地址指针,R7作循环次数计数器,R3作和数的高字节寄存器。 ORG 0200H START: MOV R7,#15 ;循环次数 MOV R3,#0 ;装和的高字节 MOV A, 20H ; MOV R0,#21H ;加数的地址 LOOP: ADD A,@R0 ;累加和在A中 JNC NEXT ;没进位则跳NEXT INC R3 ;有进位,则高位加1 NEXT: INC R0 ;加数地址加1 DJNZ R7,LOOP MOV 61H,R3 ;将和的高位传51H中 MOV 60H,A ;将和的低位传50H中 SJMP $ END 【例4.9】循环次数未知的单重循环。 设有一字符串存放在内部RAM 21H开始的单元中,并以“$”作为结束标志,请计算
您可能关注的文档
- 变量叶片泵工作原理.ppt
- 变频技术及其应用单元1 任务1 认识变频器.ppt
- 变频技术及其应用单元1 任务2 变频器的面板操作控制.ppt
- 变频技术及其应用单元1 任务3 变频器外部运行控制.ppt
- 变频技术及其应用单元1 任务4 变频器模拟量信号实现电动机的运行.ppt
- 变频技术及其应用单元1 任务5 变频器的组合运行操作控制.ppt
- 变频技术及其应用单元1 任务6 变频器的多段速运行控制.ppt
- 变频技术及其应用单元1 任务8 变频器的PID操作控制.ppt
- 变频技术及其应用单元2 任务1 PLC控制变频器实现电动机的正反转控制.ppt
- 变频技术及其应用单元2 任务2 PLC控制变频器的多段速调速控制.ppt
原创力文档


文档评论(0)