单片机第6讲1.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机第6讲1.doc

※ 第五讲 ※ 第四节 数据传送类指令(29条) 功能:将源操作数传送给目的操作数(堆栈操作特殊),指令执行后,源操作数不变,目的操作数被源操作数取代。数据传送类指令用到的助记符有MOV、MOVX、MOVC、XCH、XCHD、SWAP、PUSH、POP8种。 源操作数可采用寄存器、寄存器间接、直接、立即、变址5种寻址方式寻址,目的操作数可以采用寄存器、寄存器间接、直接寻址3种寻址方式。 在此类指令中: ■ 片内RAM之间的数据传送使用MOV指令; ■ 片内RAM与片外RAM之间的数据传送使用MOVX指令且必须经过A; ■ 程序存储器与A(只能与A,只读)之间的数据传送使用MOVC指令; ■ 堆栈操作使用POP、PUSH指令; ■ 数据交换使用XCH、XCHD、SWAP指令。 通用数据传送指令 (片内RAM之间的数据传送指令,以下中direct可以是片内RAM中的任一单元,包括SFR) 1. 立即数传送到片内RAM MOV A, #data MOV direct, #data MOV Rn, #data MOV @Ri, #data MOV DPTR, #data16 2. 片内RAM与A之间的数据传送 MOV A, Rn MOV Rn, A MOV A, direct MOV direct, A MOV A, @Ri MOV @Ri, A 3. 片内RAM单元之间的数据传送 MOV direct1, direct2 MOV direct, Rn MOV Rn, direct MOV direct, @Ri MOV @Ri, direct 二、片外RAM与片内RAM之间的数据传送 1. 用DPTR间址(遍访片外RAM的64K空间) MOVX A, @DPTR MOVX @DPTR, A 2. 用Ri间址(限于片外RAM的0000H~00FFH,少用) MOVX A, @Ri MOVX @Ri, A 注:使用上述指令之前,必须将片外RAM的地址先赋给相应的间址寄存器。 三、程序存储器与A之间的数据传送(只读) MOVC @A+DPTR MOVC @A+PC 结合变址寻址讲述查表等应用。 四、堆栈操作指令 1. 进栈指令(压栈、入栈) PUSH direct 2. 出栈指令(弹出) POP direct 注意:⑴ 执行堆栈操作指令时SP的内容自动变化(自动加1或自动减1); ⑵ 入栈与出栈次序要一一对应。(举例) 五、数据交换指令 1. 整字节交换指令 XCH A, @Ri XCH A, Rn XCH A, direct 解释其与数据传送指令的差异。 2. 半字节交换指令(高低4位对应交换) XCHD A, @Ri 3. 累加器A高低4位交换指令 SWAP A 第五节 逻辑操作类指令(24条) MCS-51中的逻辑操作包括:逻辑与、逻辑或、逻辑非(取反)、逻辑异或、移位、清零等。(说明6种逻辑运算——与、或、非、同或、异或、蕴含) 一、逻辑与运算指令(按位与) ANL A, Rn ANL A, direct ANL A, @Ri ANL A, #data ANL direct, A ANL direct, #data 逻辑与运算可以实现对某些位的“屏蔽”作用,保证数据状态的可靠(举10位A/D转换结果的例子)。 二、逻辑或运算指令(按位或) ORL A, Rn ORL A, direct ORL A, @Ri ORL A, #data ORL direct, A ORL direct, #data 逻辑或运算具有“置位”的作用。 三、逻辑异或运算指令(按位异或) 异或运算规则:相同为0、相异为1。即: 0 0 = 0 1 1 = 0 0 1 = 1 1 1 = 1 XRL A, Rn XRL A, direct XRL A, @Ri XRL A, #data XRL direct, A XRL direct, #data 欲对某位取反,可将此位与“1”异或;欲对整个字节取反

文档评论(0)

书屋 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档