第3章-MCS-51单片机指令系统-331数据传送类指令.ppt

第3章-MCS-51单片机指令系统-331数据传送类指令.ppt

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[例4] 试编程,将片外RAM的2000H单元内容送入片外RAM的0200H单元中。 解 MOV DPTR, #2000H ;源地址送DPTR MOVX A,@DPTR ;从外部RAM取数送A MOV DPTR,#0200H ;目的地址送DPTR MOVX @DPTR,A ;A中内容送外部RAM 表基地址寄存器 功能 查表指令 查找ROM中的常数表格,只能读,不能写 格式(单字节指令) MOVC A, @A + PC ;(PC)←(PC)+1 ;(A)←((A)+(PC)) 寻址范围: MOVC A, @A + DPTR ;(PC)←(PC)+1 ;(A)←((A)+(DPTR)) 寻址范围: 3. 程序存储器(ROM)到累加器(A)的传送 ? 整个ROM的64KB空间 查表指令后的256B空间 [例1] 若 (PC)=1001H,(A)=40H,(1042H)=56H MOVC A,@A+PC 结果: (A)=_____H,(PC)=______H [例2] 若 (DPTR)=3201H,(A)=47H,(3248H)=0FEH MOVC A,@A+DPTR 结果: (A)=______H, (DPTR)=_______H 56 1002 0FE 3201 [例3]已知:累加器A中有一个0~9范围内的数,使用查表指令编程查找出该数的平方值,设:查 8 的平方值。 0 1 4 9 16 25 36 49 64 81 2000H 2001H 2002H 2003H 2004H 2005H 2006H 2007H 2008H 2009H 用DPTR作为基址寄存器 MOV DPTR, #_______H MOV A, #_____H MOVC A, @A+DPTR ROM 中 0~9 的平方表 2000 08 用PC作为基址寄存器 地址 机器码 源代码 注释 -------------|-------------|---------------------|----------------------- 1FFBH | 24H DATA | ADD A, #data |;(A) ← (A)+ #data 1FFDH | 83H | MOVC A, @A+PC |;(PC) ← (PC)+1 | | |;(A) ← ((A)+(PC)) 1FFEH | 80FEH | SJMP $ |;等待 2000H | 00H | DB 0 | 2001H | 01H | DB 1 | 2002H | 04H | DB 4 | | ……… | | 2009H | 51H | DB 81 | 本例中:①#Data = #2H(当前PC与数据表首间的距离) ② A 中存放待查数据在表中的索引 小结 掌握指令 MOV、PUSH/POP、XCH/XCHD、SWAP MOVX MOVC 作业:P53——3-6,3-7 预习 MCS-51单片机指令系统——数据传送指令 算术、逻辑、控制、位 [练习]编程,实现下列要求的数据传送 (1)内部RAM 20H单元的数据→内部RAM 40H单元 (2)外部RAM 0020H单元的内容→内部RAM 40H单元 MOV 40H, 20H MOV DPTR, #0020H MOVX A, @DPTR MOV 40H, A MOV R0, #20H MOV P2, #00H MOVX A, @R0 MOV 40H, A 或 [练习]编程,实现下列要求的数据传送 (3)内部RAM 20H单元的内容→外部RAM 4000H单元 (4)外部RAM 2000H单元的内容→外部RAM 4000H单元 MOV A, 20H MOV DPTR, #4000H MOVX @DPTR, A MOV A, 20H MOV R1, #00H MOV P2, #40H MOVX @R1, A MOV DPTR, #2000H MOVX A, @DPTR MOV DPTR, #4000H MOVX @DPTR, A 或 * 这组指令的功能是: 把源操作数的内容送入当前工作寄存器区的R0~R7中的某一个寄存器。指令中Rn在内部数据存储器中的地址由当前的工作寄存器区选择位R

文档评论(0)

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

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

1亿VIP精品文档

相关文档