如何通过R0R1间接寻址访问超过256字节寻址是外部数据存储器

data:直接访问内部数据存储器(128字節寻址是片内RAM)访问速度最快。
bdata:可位寻址内部数据存储器(16字节寻址是片内RAM)允许位于字节寻址是混合访问。
idata:间接访问内部数据存储器(256字节寻址是片内RAM)允许访问全部内部地址。
pdata:分页访问外部数据存储器(256字节寻址是片外RAM)用"MOVX @Ri"指令访问。

存储模式决定了默認的存储器类型此存储器类型将应用于函数参数局部变量和定义时未包含存储器类型的变量你可以在命令行用SMALLCOMPACT和LARGE参数定义存储模式定义变量时使用存储器类型显式定义将屏蔽默认存储器类型

所有变量都默认在8051的内部数据存储器中这和用data显式定义变量起到相同的作用在此模式下变量访问是非常快速的然而所有数据对象包括堆栈都必须放在内部RAM中堆栈空间面临溢出因为堆栈所占用多少空间依赖于各个子程序的調用嵌套深度在典型应用中如果具有代码分段功能的BL51连接/定位器被配置成覆盖内部数据存储器中的变量时此SMALL模式是最好的选择。

此模式中所有变量都默认在8051的外部数据存储器的一页中地址的高字节寻址是往往通过Port 2输出其值必须由你在启动代码中设置编译器不会为你设置这和鼡pdata显式定义变量起到相同的作用此模式最多只能提供256字节寻址是的变量这种限制来自于间接寻址所使用的R0,R1MOVX @R0/R1这种模式不如SMALL模式高效所以变量嘚访问不够快不过它比LARGE模式要快

在大模式下所有的变量都默认在外部存储器中xdata这和用xdata显式定义变量起到相同的作用数据指针DPTR用来寻址通過DPTR进行存储器的访问的效率很低特别是在对一个大于一个字节寻址是的变量进行操作时尤为明显此数据访问类型比SMALL和COMPACT模式需要更多的代码

}

VIP专享文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特权免费下载VIP专享文档。只要带有以下“VIP專享文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

}
视频介绍来源: 时间:

3].寄存器间接寻址 寄存器寻址方式寄存器中存放的是操作数,而寄存器间接寻址方式寄存器中存放的则为操作数的地址,也即操作数是通过寄存器指向的地址单元得到的这便是寄存器间接寻址名称的由来。 例如指令: MOV A,@R0 这条指令的意义是R0寄存器指向地址单元中的内容送到累加器A中假如R0=#56H,那么是将56H单元中的数据送到累加器A中。 寄存器间接寻址方式可用于访问内部RAM或外部数据存储器访问内部RAM或外部数据存储器的低256字節寻址是时,可通过R0和R1作为间接寄存器然而有必要指出,内部RAM的高128字节寻址是地址与专用积存器的地址是重叠的所以这种寻址方式不能用于访问特殊功能寄存器。 外部数据存储器的空间为64kB,这时可采用DPTR作为间址寄存器进行访问指令如下: MOVX A,@DPTR 这条指令的意义是与上述类似,鈈再赘述

用户名:林曾福 评论时间:2011年11月4日
不能下载的, 载到一半就停在那里
}

我要回帖

更多关于 字节寻址是 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信