- 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章 单片机的程序设计与调试 4.1.1 伪指令 1.起始汇编伪指令 2.结束汇编伪指令 3.通用赋值伪指令 【例4-1】将BLOCK单元开始存放的10个无符号数进行求和,并将结果存入SUM单元中(假设结果小于255)。 4.位地址赋值伪指令 数据的表示方法 6.双字节定义伪指令 7.空间定义伪指令 循环程序设计 1.使用 MOVC A,@A + DPTR 查表 4.5.1 子程序设计 练习题 开始 X、Y符号相同? X=Y? X=Y,点亮P1.0 结束 Y N Y X0? N Y XY,点亮P1.2 X-Y N CY=1? N Y XY,点亮P1.1 X EQU 20H Y EQU 30H ORG 0000H MOV A, X XRL A,Y ;X,Y异或 JB ACC.7,NEXT ;符号不同跳到NEXT MOV A, X CJNE A,Y,NEQUAL ; X?Y,跳到NEQUAL CLR P1.0 ; X=Y,点亮P1.0 SJMP finish NEQUAL: JC XXY ; XY,转XXY SJMP XDY ; XY,转XDY NEXT: MOV A, X JNB ACC.7,XDY ;X为正,转XDY XXY: CLR P1.2 ;XY,点亮P1.2 SJMP finish XDY: CLR P1.1 ;XY,点亮P1.1 finish: SJMP $ END 它是根据散转条件的来决定程序流向的,程序可有三个以上的流向,所以也称为散转分支程序,多用于键盘程序。 图4-9 多分支程序 多分支程序(散转程序) 使用指令: JMP @A+DPTR 把16位数据指针DPTR的内容与累加器A中的8位无符号数相加,形成地址,装入程序计数器PC,形成散转的目的地址 基地址 常数 变量 DPTR A + 16位地址 PC 存放键号 DPTR AJMP PROG0 AJMP PROG1 AJMP PROG2 AJMP PROGn 转移指令表 转移指令表首地址 解:程序如下。 MOV DPTR, #TAB ; 指向转移指令表首地址 MOV A, R2 ; 取键号 ADD A, R2 ; 键号值乘2 JNC NEXT ; 乘积小于256, 转 INC DPH ; 大于等于256, DPTR高8位加1 NEXT:JMP @A+DPTR ; 散转 TAB: AJMP PROG0 ; 转移指令表 AJMP PROG1 …… AJMP PROGn 例:根据R2中的内容,转向相应处理分支的程序。 R2?=?0, 转PROG0; R2?=?1,转PROG1;……R2?=?n, 转PROGn。 键号≥128 转移范围在2KB内 DPTR LJMP PROG0 LJMP PROG1 LJMP PROG2 LJMP PROGn 转移范围超过2KB 解:程序如下。 MOV DPTR, #TAB ; 指向转移指令表首地址 MOV A, R2 ; 取键号 ADD A, R2 ; 键号值乘2 JNC NEXT1 ; 乘积小于256, INC DPH ; 大于等于256, DPTR高8位加1 NEXT1: ADD A, R2 ; 键号值乘3 JNC NEXT ; INC DPH NEXT:JMP @A+DPTR ; 散转 TAB: LJMP PROG0 ; 转移指令表 LJMP PROG1 …… LJMP PROGn 循环程序是指当循环条件满足时,能够重复执行某一段程序的程序结构。 循环程序优点:减少指令数量,节省存储单元,使程序结构紧凑和可读性好。 例:将内部RAM30H单元的内容传送的外部RAM 0100H
您可能关注的文档
最近下载
- 国企中层领导竞聘笔试题(含答案).docx VIP
- 小学与初中英语衔接教学建议.ppt
- 2025年证券从业资格考试真题及答案.docx VIP
- ABB SPAM150C 电动机保护继电器模件 手册(中文).pdf
- 2023年标准化工程师考试试题.pdf VIP
- 新版西师大版三年级数学上册应用题专项练习题 .docx VIP
- 精装修工程冬季施工方案、.doc VIP
- INFINI Labs(曾勇):下一代纯实时搜索引擎INFINI Pizza.pdf VIP
- DB62_T 5087-2025 马铃薯品种 天薯15号.docx VIP
- DB41_T 2829-2025 大口黑鲈池塘养殖技术规范.docx VIP
原创力文档


文档评论(0)