- 1、本文档共130页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
寻址方式:寻找指令中操作数的地址,并把操作数取出来的方法。 51单片机一共七种寻址方式: 立即寻址 直接寻址 寄存器寻址 寄存器间接寻址 变址寻址 相对寻址 位寻址 表3-1 寻址方式及寻址空间对照表 1、作 业:指出下列指令中源操作数的寻址方式 MOV A, 77H ADD A, R2 MOV A, #55H MOV A, @R1 MOVC A, @A+DPTR MOV C , 30H MOVX A, @R0 MOV 50H, A MOVC A, @A+PC SJMP 34H ADD A, #21 分类: 1、 以累加器A为目的地址的指令 2 、以寄存器Rn为目的地址的指令 3、 以直接地址为目的地址的指令 4、 以寄存器间接地址为目的地址的指令 5 、以DPTR为目的地址的16位指令 指令格式: MOV A,Rn ;A←(Rn) MOV A,direct ;A←(直接地址) MOV A,@Ri ;A←((Ri)) MOV A,#data ;A←立即数 指令解释:把源操作数送入累计器A中。 举例说明: [例3-11]: 已知(R1)=40H;(30H)=12H; (40H)=34H,求分别执行下列指令后结果。 ①MOV A,R1 ②MOV A,30H ③MOV A,@R1 ④MOV A,#56H 指令格式: MOV Rn,A ;Rn←(A) MOV Rn,direct ;Rn←(直接地址) MOV Rn,#data ;Rn← 立即数 指令解释:把源操作数送入工作寄存器Rn中。 举例说明: [例3-12]: 已知(A)=40H;(30H)=12H; (40H)=34H,求分别执行下列指令后结果。 ①MOV R1,A ②MOV R1,30H ③MOV R1,#40H 指令格式: MOV direct,A ; direct ←(A) MOV direct,Rn ; direct ←(Rn) MOV direct1,direct2 ; direct 1←(direct 2) MOV direct,@Ri ; direct ← ( (Ri) ) MOV direct,#data ; direct ← 立即数 指令解释:将源操作数送入直接地址所指的存储单元中。 举例说明: [例3-13]: 已知(R1)= 40H;(30H)=12H;(40H)=34H;(A)=78H,求分别执行下列指令后结果。 ①MOV 50H,A ②MOV 50H,R1 ③MOV 50H,30H ④MOV 50H,@R1 ⑤MOV 50H,#56H 指令格式: MOV @Ri,A ;(Ri)← (A) MOV @Ri,direct ;(Ri)←( direct ) MOV @Ri,#data ;(Ri)← 立即数 指令解释:把源操作数送入R0、R1指针间接寻址的片内RAM单元中。 举例说明: [例3-14]: 已知(R0)=40H;(30H)=12H; (A)=78H,求分别执行下列指令后结果。 ①MOV @R0,A ②MOV @R0,30H ③MOV @R0,#56H 指令格式: MOV DPTR,#data16 ;DPTR←16位立即数 指令解释:把一个16位立即数送入DPTR寄存器。高8位送入DPH,低8位送入DPL。 练习题 2、设(30H)=40H;(40H)=10H;(P1)=0CAH, 试判断下列程序执行后的结果。 MOV R0,#30H MOV A, @R0 MO
文档评论(0)