- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
51单片机的寻址方式
5511单单片片机机的的寻寻址址方方式式
寻寻址址方方式式::指指定定操操作作数数所所在在单单元元的的方方法法。。
在我们学习的8051单片机中,有7 寻址方法,下面我们将逐一进行分析。
1. 立立即即寻寻址址
用 “#”作前缀
MOV A,#20H
在这 寻址方式中,指令多是双字节的。。立立即即数数就就是是存存放放在在程程序序存存储储器器中中的的常常数数,,换换句句话话说说就就是是操操作作数数 ((立立即即数数))是是包包含含在在指指令令字字节节中中的的。。
例如: MOV A,#3AH
这条指令的指令代码为74H、3AH,是双字节指令,这条指令的功能是把立即数3AH送入累加器A中。
MOV DPTR,#8200H在前面学单片机的专用寄存器时,我们已学过,DPTR是一个16位的寄存器,它由DPH及DPL两个8位的寄存器组成。这条指令的意思就是把
立即数的高8位 (即82H)送入DPH寄存器,把立即数的低8位 (即00H)送入DPL寄存器。
二、直直接接寻寻址址
指令中直接给出操作数的地址。
MOV A,30H;这条指令中操作数就在30H单元中,也就是30H是操作数的地址,并非操作数。
MOV 30H,DPH
在在80C51单单片片机机中中,,直直接接地地址址只只能能用用来来表表示示内内部部数数据据存存储储器器、、位位地地址址空空间间以以及及特特殊殊功功能能寄寄存存器器,,具体的说就是:
11、、内内部部数数据据存存储储器器RAM低低128单单元元。。在在指指令令中中是是以以直直接接单单元元地地址址形形式式给给出出。。
我我们们知知道道低低128单单元元的的地地址址是是00H-7FH。。在在指指令令中中直直接接以以单单元元地地址址形形式式给给出出这这句句话话的的意意思思就就是是这这0-127共共128位位的的任任何何一一位位,,例例如如0位位是是以以00H这这个个单单元元地地
址址形形式式给给出出、、1位位就就是是以以01H单单元元地地址址给给出出、、127位位就就是是以以7FH形形式式给给出出。。
22、、位位寻寻址址区区。。20H-2FH地地址址单单元元。。
33、、特特殊殊功功能能寄寄存存器器。。专专用用寄寄存存器器除除以以单单元元地地址址形形式式给给出出外外,,还还可可以以以以寄寄存存器器符符号号形形式式给给出出。。例例如如下下面面我我们们分分析析的的一一条条指指令令 MOV IE,,#85H 前前面面的的学学
习习我我们们已已知知道道,,中中断断允允许许寄寄存存器器IE的的地地址址是是80H,,那那么么也也就就是是此此指指令令也也可可以以以以 MOV 80H,,#85H的的形形式式表表述述。。
直直接接寻寻址址是是唯唯一一能能访访问问特特殊殊功功能能寄寄存存器器的的寻寻址址方方式式 !!
大家来分析下面几条指令:
MOV 65H,A ;将A的内容送入内部RAM的65H单元地址中
MOV A,direct ;将直接地址单元的内容送入A中
MOV direct,direct;将直接地址单元的内容送直接地址单元
MOV IE,#85H ;将立即数85H送入中断允许寄存器IE
前面我们已学过,数数据据前前面面加加了了 ““#””的的,,表表示示后后面面的的数数是是立立即即数数 (如#85H,就表示85H就是一个立即数),数数据据前前面面没没有有加加 ““#””号号的的,,就就表表示示后后面面的的是是
一一个个地地址址地地址址 (如,MOV 65H,A这条指令的65H就是一个单元地址)。
3、寄寄存存器器寻寻址址
操作数存放在工作寄存器R0 ~ R7中,或寄存器B中。
MOV A,R2
寄存器寻址的寻址范围是:
1、4个工作寄存器组共有32个通用寄存器,但在指令中只能使用当前寄存器组 (工作寄存器组的选择在前面专用寄存器的学习中,我们已知道,是由程序状态字
PSW中的RS1和RS0来确定的),因此在使用前常需要通过对PSW中的RS1、RS0位的状态设置,来进行对当前工作寄存器组的选择。
2、部分专用寄存器。例如,累加器A、通用寄存器B、地址寄存器DPTR和进位位CY。
寄存器寻址方式是指操作数在寄存器中,因此指定了寄存器名称就能得到操作数。
例如:MOV A,R0这条指令的意思是把寄存器R0的内容传送到累加器A中,操作数就在R0中。
INC R3这条指令的意思是把寄存器R3中的内容加1
从前面的学习中我们应可以理解到,其其实实寄寄存存器器寻寻址址方方式式就就是
您可能关注的文档
- Keepalived HA配置和测试过程for linux.doc
- Kingdom Rush Frontiers 2.3全成就攻略含新增海岛万圣节6个关卡.doc
- Kruskal算法的一种改进-二分Kruskal算法.pdf
- Kwaitan 宴会中餐菜单 2016.pdf
- lab3-1 Linux常用命令2和简单shell编程练习(已完成).doc
- LABWINDOWS中如何输出EXCEL报表.doc
- Le calendrier francais 法国节假日介绍 法文版.pdf
- LINUX CNC应用手册(32轴高精度)_V1.32.pdf
- linux zImage生成过程详解.doc
- linux7.0安装及网卡配置.doc
原创力文档


文档评论(0)