单片机原理与应用第二版第三章(黄友锐)课件.pptVIP

单片机原理与应用第二版第三章(黄友锐)课件.ppt

  1. 1、本文档共94页,可阅读全部内容。
  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文档。上传文档
查看更多
4. 空操作指令(1) NOP ;PC ← PC+1 这是一条单字节指令。执行时,不作任何操作(即空操作),仅将程序计数器PC的内容加1,使CPU指向下一条指令继续执行程序。这条指令常用来产生一个机器周期的时间延迟。 返回本节 3.4.5 位操作指令(17) 1.位传送指令 MOV C,bit ;C←(bit) MOV bit,C ;bit←C 2.位状态修改指令(位清零和置位) CLR C ;C←0 CLR bit ;(bit)←0 SETB C ;C←1 SETB bit ;(bit)←1 3.位逻辑运算指令 ANL C,bit ;C←C∧(bit) ANL C,/bit ;C←C∧(/bit) ORL C,bit ;C←C∨(bit) ORL C,/bit ;C←C∨( / bit) CPL C CPL bit 4.位控制转移指令 JC rel ; 若C=1, 则转移(PC←PC+2+rel);否则程序顺序执行 JNC rel ; 若C=0, 则转移(PC←PC+2+rel);否则程序顺序执 JB bit,rel ; 若(bit)=1, 则转移(PC←PC+3+rel);否则程序顺序执行 JNB bit,rel ; 若(bit)=0, 则转移(PC←PC+3+rel);否则程序顺序执行 JBC bit,rel ; 若(bit)=1, 则PC←PC+3+rel,(bit)←0;否则程序顺序执行 功能:分别检测指定位是1还是0,若条件符合,则CPU转向指定的目标地址去执行程序;否则,顺序执行下条指令。 返回本节 7.读程序存储器 MOVC A,@A+DPTR;A ← (A+DPTR) MOVC A,@A+PC ;A ← (A+PC) 例如 已知A=30H,DPTR=3000H, 程序存储器单元(3030H)=50H,执行 MOVC A,@ A+DPTR后,结果? A=50H。 【例3.2】查表求0~9的平方值。 ORG 1000H START: MOV DPTR,#2000H MOV  A,#NUMB ;NUMB=0~9 MOVC A,@ A+DPTR SJMP $ 2000H: DB 0,1,4,9,16,25,36,49,64,81 例3.3 查表将累加器A中的0~9的二进制数转换成ASCII码。 ORG 2000H START: MOV A,#NUMB ;NUMB=0~9 ADD A,#02H   ;修正地址 MOVC A,@ A+PC SJMP $ TAB : DB ‘0’,‘1’,‘2’,‘3’,‘4’,‘5’,‘6’,‘7’,‘8’,‘9’ 8.堆栈操作 所谓堆栈是在片内RAM中按“先进后出,后进先出”原则设置的专用存储区。数据的进栈出栈由指针SP统一管理。堆栈的操作有如下两条专用指令: PUSH direct;SP←(SP+1),(SP)←(direct) POP direct;(direct)←(SP),SP ← SP-1 PUSH是进栈(或称为压入操作)指令。指令执行过程如图3-7所示。 POP是出栈(或称为弹出操作)指令。指令执行过程如图3-8所示。 片内RAM 30H 11H 10H SP ×× 片内RAM 50H 40H 11H 10H SP ×× 40H 30H 片内RAM 50H 40H 11H 10H 50H ×× SP 30H 片内RAM 40H 11H 10H 34H ×× SP 30H 34H 34H ×× ×× 执行前 执行前 执行前PUSH指令后 执行POP指令后 图3-7 指令PUSH操作示意图 图3-8 指令POP操作示意图 9.数据交换 l????字节交换 XCH A,Rn ;A= Rn XCH A ,direct ;A=(direct) XCH A,@Ri ;A=(Ri) l????半字节交换 XCHD A,@Ri ;A0~3=(Ri)0~3 SWAP A ;A0~3=A4~7 【3.4】将片内RAM 30H单元与40H单元中的内容互换。 方法1(直接地址传送法): MOV 31H,30H MOV 30H,40H MOV 40H,31H SJMP $ 方法2(间接地址传送法): MOV R0,#40H MOV R1,#30H MOV A,@R0 MOV B,@R1 MOV @R1

文档评论(0)

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

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

1亿VIP精品文档

相关文档