- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机第三章重点
8051单片机共有7种寻址方式: (1)直接寻址 (2)立即数寻址 (3)寄存器寻址 (4)寄存器间接寻址 (5)变址寻址 (6)相对寻址 (7)位寻址 例子: 清零程序 ORG 8000H SE01: MOV R0, #00H MOV DPTR, #0C000H LOO1: MOV A, #00H MOVX @DPTR, A INC DPTR INC R0 CJNE R0, #00H, LOO1 LOOP: SJMP LOOP 练 习 例1:已知两个8位无符号乘数分别放在30H和31H单元中,试编出令它们相乘并把积的低8位放入32H,积的高8位放入33H单元的程序。 ORG 1000H MOV R0, #30H MOV A, @R0 INC R0 MOV B, @R0 MUL AB INC R0 MOV @R0, A INC R0 MOV @R0, B SJMP $ END 习 题 习 题 习 题 习 题 习题解答 * 很重要! 必须掌握 1. 已知(A)=42H,(C)=1, 执行 ADDC A,#18H 指令后, (A)= ,(C)= 接着执行指令 RRC A ,则有 (A)= ,(C)= 2. 已知(A)=97H,(40H)=23H, 执行 ORL 40H,A 指令后, (A)= ,(40H)= 3. 阅读下段子程序,要求 1.说明程序的功能。 2.写出涉及的寄存器及片内RAM单元的最后结果。 【其中程序执行前:(40H)=A8H, (41H)=91H】 源程序: PROG1: MOV R1,#40H MOV A,@R1 INC R1 ADD A,@R1 INC R1 MOV @R1,A MOV A,#00H ADDC A,#00H INC R1 MOV @R1,A RET 例1:已知外部RAM中1000H为起始地址的数据块,以零为结束标志,试编程将之传送到以40H为始址的内部RAM区。 MOV DPTR, #1000H MOV R0, #40H LOOP: MOVX A, @DPTR JZ DONE ;若A=0则转移到DONE(结束) MOV @R0, A INC DPTR INC R0 SJMP LOOP DONE: SJMP $ END 例1:编写一段程序把片外RAM 1000H开始的10个数据传送到片内40H开始的单元中。 MOV R5, #10 MOV DPTR, #1000H MOV R0, #40H LOOP: MOVX A, @DPTR MOV @R0, A INC DPTR INC R0 DJNZ R5, LOOP SJMP $ 例1:编写一段程序把片外RAM中1000H开始的10个数传送到片内40H开始的单元中。 11. MOV、MOVX和MOVC三条指令有什么相同和不同点。 答:(1). 三条指令都是普通数据传送类指令。 (2).它们所传送的对象不同。 MOV 是8051片内各单元的相互传送 MOVC 是程序存储器内容传送给A MOVX 是片外RAM单元与A的相互传送 5. 访问低128B片内RAM,有哪些寻址方法? 答:(1)直接寻址 (2)寄存器间接寻址 (3)寄存器寻址,仅对Rn(n=0~7) (4)位寻址,仅对位寻址区(00~7FH)的128个单元 6. 对8051片内RAM的高128B的地址空间寻址要注意什么? 答:即特殊功能寄存器SFR 寻址方法有: (1)直接寻址,对所有的SFR (2)寄存器寻址,仅对A、B、DPTR
文档评论(0)