- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第九讲 单片机常用指令 主要内容: 1、ORG和END伪指令 2、MOV数据传送指令 3、SJMP程序转移指令 4、DJNZ Rn 程序转移指令 * 一、ORG和END伪指令 1、ORG伪指令 用于指定单片机指令在程序存储器中存放的地址。 2、END伪指令 放在单片机程序的最后,表示程序编写的结束。 例如: ORG 0000H ;程序在0000H地址开始 ……. ;程序指令 END ;结束 * 最常用的指令,用于数据的设定和传递。 注意:使用范围是,单片机内部数据存储单元。 指令形式: MOV 目的操作数,源操作数 指令功能:将源操作数的数据存入目的操作数 中,而源操作数保持不变。 二、MOV内部数据传送指令(15条) * 指令功能:#data表示8位二进制常数。 指定累加器A中的数据为data。 1、MOV A ,#data 例如: ORG 0000H ;程序开始 MOV A , ;二进制常数 MOV A , #0EH ;十六进制常数 MOV A , #15 ;十进制常数 END ;程序结束 * 指令功能: direct表示单片机内部数据存储单元地址。 将direct地址单元中的数据存入累加器 A中,direct地址单元的数据保持不变。 2、 MOV A , direct 例如: ORG 0000H ;程序开始 MOV 40H ,#30H ; 40H 30H MOV A ,40H ; A 30H, 40H 30H MOV 43H,#25 ; 43H 25 MOV A ,43H ; A 25, 43H 25 END ;结束 * 指令功能:Rn表示工作寄存器R0-R7。 将工作寄存器Rn中的数据存入累加器A中, Rn中的数据保持不变。 3、MOV A ,Rn 例如: ORG 0000H ;程序开始 MOV R0,#25H ; R0 25H MOV A ,R0 ; A 25H, R0 25H MOV R6,#5DH ; R6 5DH MOV A ,R6 ; A 5DH, R6 5DH END ;结束 * 指令功能: Ri表示工作寄存器R0-R1。 通过@Ri间接操作单片机内部数据存储单元, 将存储单元中的数据存入累加器A中,存储单元 中的数据保持不变,Ri保持不变。 4、MOV A,@Ri 例如: ORG 0000H ;程序开始 MOV R1 ,#2FH ; R1 2FH MOV 2FH,#36H ; 2FH 36H MOV A ,@R1 ; A 36H, 2FH 36H, R1 2FH END ;结束 * 5、NOP 空操作指令 指令功能:不执行任何操作,具有执行时间, 通常用来实现延时功能。 例如: ORG 0000H ;程序开始 NOP NOP NOP END ;结束 * 指令练习 ORG 0000H MOV A ,#11H MOV R0,#30H MOV @R0,A MOV 40H,#22H MOV 50H,40H MOV 60H,A NOP END ;程序开始 ; A 11H ; R0 30H ; R0 30H, 30H 11H, A 11H ; 40H 22H ; 50H 22H, 40H 22H ; 60H 11H, A 11H ;空操作 ;结束 * 控制程序执行的方向,使程序从一个位置转到另一个位置去执行。 指令形式:SJMP 指令标号 指令功能:指令标号用于标记指令的位置 。 执行本指令,程序将转到指令标 号对应的位置去执行。 注意:执行本指令不需要条件约束,一经执 行即会发生程序转移。 三、SJMP无条件转移指令 * 例如: ORG 0000H ;程序开始 START: MOV A ,#20H ; A 20H MOV P1,#0FFH ; P1 FFH MOV A ,P1 ; A P1 , SJMP START ;跳转至START位置 END ;结束 程序无限循环执行。 * 控制程序执行的方向,使程序从一个地方转到 另一个地方去执行。 四、DJNZ Rn条件转移指令 指令形式:DJNZ Rn,指令标号 指令功能:Rn指工作寄存器R0-R7。 指令标号用于标记指令的位置 。 Rn Rn -1;判断Rn中的数据是否 为零;若 Rn ≠0程序将转到指令标 号对应的位置去执行,若 Rn 0将 顺序向下执行。 注意:执行本指令控制程序转移是有前提条件 的,条件满足才发生程序转移。 * 例如: ORG 0000H ;程序开始 MOV R2 , #6 S
您可能关注的文档
最近下载
- 苏教译林版九年级下册整册书单词默写表-单词表.docx VIP
- 2.2《养成亲社会行为》 课件 2025统编版道德与法治八年级上册.ppt
- 中国古代古典书籍 《钟馗全传》 全本.doc VIP
- 《差异化教学探讨》课件.ppt VIP
- 四棉医院检验科室内质控项目一览表技术指导.docx VIP
- 普通高中体育与健康新课程标准试题与答案(2025年版2025年修订).pdf VIP
- 2025年浙江高三高考英语模拟试卷及答案详解.pdf VIP
- 《马克思主义新闻观十二讲》复习备考试题及答案 .pdf VIP
- 重庆翘柏高锰酸钾及其复合盐在水处理中的应用.pdf VIP
- 家庭经济状况信息表(样表).doc VIP
文档评论(0)