- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《高级电工-单片机》04-10
MOVC A,@A+DPTR ;查表求Yn (Yn=21) XCH R7,A ;交换 (R7)=21,(A)=1 INC A ; (A)=2 MOVC A,@A+DPTR ;查表求Yn+1 ,(A)=23 CLR C SUBB A,R7 ;求Yn+1 –Yn (23-21) MVL AB ;求(Yn+1 –Yn)× (X0-Xn) MOV B,#05 DIV AB ;(Yn+1 –Yn)× (X0-Xn) /5 ADD A,R7 ;求出Y =6/5+21=22 MOV P0,A RET ORG ××××H TABL:DB 15,21,23,…… ? 4.5.7 查表程序 复习题:2、3、8、9、10、11、12、13、14 15、16、19、22、23、25、26 作业: 为高级电工班的学员提供优秀的教学资源! 为高级电工班的学员提供优秀的教学资源! 典型循环结构包括四部分: 初始化部分 循环处理部分 循环控制部分 循环结束部分 4.3.3 循环结构程序设计 4.3.3 循环结构程序设计 1.设置循环计数器实现已知循环次数的循环控制 程序如下: MOV R0,#64H ;设置循环计数器 MOV DPTR,#DATA ;设置地址指针 CLR A LOOP:MOVX @DPTR,A ;清0 INC DPTR DJNZ R0,LOOP ;判0结束循环 4.3.2 分支程序设计 〔例4-7〕将首址为DATA的100个外部RAM单元清零。 〔解〕该例为已知循环次数的循环程序将循环次数数存放在R0中。椐图如4-7所示。 2.使用测试条件转移指令控制未知次数的循环 〔解法一〕框图如图4-8所示:程序如下: ORG 1000H MOV R2,#STA ;设地址指针 MOV B,#00H ;设计数器 LOOP: MOV A,@R2 CJNE A,“$”,NEXT ;判断是否结束 MOV LEN,B ;存数据结果 SJMP DONE NEXT: INC B ;修改计数器 INC R2 ;修改地址指针,准备下一次循环 SJMP LOOP DONE: END 4.3.2 分支程序设计 〔例4-8〕 设某以“$”为结束标志的字符总共不超过256个,存放在内部RAM以STA为首址的连续单元里,试统计此字符的长度并存放到内部RAM的LEN单元中。 程序如下: ORG 1000H MOV R2,#STA-1 ;设地址指针 MOV B,#0FFH ;设计数器 LOOP: INC R2 ;修改地址指针,准 备下一次循环 INC
原创力文档


文档评论(0)