MCS51存储器和位处理器.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3 MCS-51存储器和位处理器 1. 概论 1)随机存取存储器RAM 双极型RAM MOS型RAM(静态RAM、动态RAM) 2)只读存储器ROM 掩膜只读存储器ROM 可编程序只读存储器PROM 可擦写只读存储器 EPROM(紫外线擦写)、E2PROM(电擦写) 2. MCS-51存储器结构 【存储器映像】 1)程序存储器(片内0000H~0FFFH) 8051单片机内部有4KB的掩膜ROM、8751单片机内部有4KB的EPROM,而8031内部没有程序存储器,必须外接程序存储器。 当 引脚接高电平时,CPU将首先访问内部程序存储器,在PC超过0FFFH单元时,CPU将自动转入访问外部程序存储器。 当 引脚接低电平时,所有取指操作均指向外部程序存储器。对于8031/8032, 必须接低电平(接地)。 从0003H~0032H单元被保留专用于中断服务程序。 A.内部数据存储器 【特殊功能寄存器SFR】 B.外部数据存储器 由于MCS-51系列单片机内部数据存储器只有128字节,往往不够用,这就需要扩展外部数据存储器,外部数据存储器最多可扩至64KB。外部数据存储器的访问地址可由工作寄存器 Ri(8位)或数据指针DPTR(16位)提供,前者的寻址空间256字节,后者可寻址64KB。Ri由P0口输出;DPTR的DPL由P0口输出,DPH由P2口输出。读/写操作的数据由P0口输入/输出,P0口为分时复用。 3)MCS-51单片机系统的存储器结构特点 数据存储器和程序存储器分开,各有自己的寻址系统、控制信号和功能。 存储器有内外之分。 分开的存储结构更有效地使用较大而固定的程序和频繁地处理大量的数据或变量。 MCS-51单片机是由芯片内存储器和芯片外扩展存储器构成单片机应用系统的整个存储系统。(参见存储器映像图) 【存储器映像】 3. MCS-51的寻址方式 1)立即寻址 2)直接寻址 指令中操作数直接以单元地址的形式给出,就称之为直接寻址。能进行直接寻址的存储空间有SFR寄存器和内部数据RAM。 例如: MOV PSW,# 20H ; (PSW)←#20H MOV A,30H ;(A)←(30H) 3)寄存器寻址 操作数在寄存器中。因此指定了寄存器就能得到操作数。在寄存器寻址方式的指令中以符号名称来表示寄存器。 寄存器包括: 当前工作寄存器组 R0~R7 或 A、B 、DPTR等 例如: MOV A,R0 CLR A ;(A)←0 INC DPTR ;(DPTR)←(DPTR)+1 ADD R5,#20H ;(R5)←#20H+(R5) 4)寄存器间接寻址 以寄存器中内容为地址,以该地址中内容为操作数的寻址方式。即操作数是通过寄存器间接得到的。 间接寻址的存储器空间包括:内部数据RAM和外部数据RAM。 寄存器间接寻址方式的寻址空间 内部RAM低128单元 间址寄存器:R0 或 R1 通用形式为:MOV指令及@Ri(i=0或1) 外部RAM 64K 间址寄存器:DPTR 通用形式为:MOVX指令及@DPTR 例如:MOVX A,@DPTR 外部RAM的低256单元 间址寄存器:R0 或 R1 通用形式为:MOVX指令及@Ri(i=0或1) 例如:MOVX A,@R0 堆栈操作指令(PUSH和POP):以堆栈指针SP作为间址寄存器 5)变址寻址(基址寄存器+变址寄存器间接寻址) 变址寻址只能对程序存储器中数据进行操作。由于程序存储器是只读的,因此变址寻址只有读操作而无写操作,在指令符号上采用MOVC的形式(如图所示)。 例如:MOVC A,@ A+DPTR ;A←(A+DPTR) 又如,MOVC A,@ A+PC ;A←(A+PC) 基址寄存器分别是DPTR和PC,变址寄存器是A。 6)相对寻址 以当前程序计数器PC的内容为基础,加上指令给出的一字节补码数(偏移量)形成新的PC值的寻址方式。 相对寻址用于修改PC值,主要用于实现程序的转移。 转移的目标地址计算公式: 目的地址=转移指令地址字节数+rel (rel:-128~127) 例如: JC 75H ;PC←PC+2+75H地址 7)位寻址 查寻片内RAM单元中的20H~2FH和允许进行位操作的专用寄存器中的位地址,从该地址中取出位数据进行操作。 位寻址其实是一种直接寻址方式,不过其地址是位地址。 例如: SETB 10H ;将10H位置1【若22H单元中存放着数据40H,22H单元的Do位的位地址为10H,执行上述指令后(22H)=41H】 又如: MOV 32H,C ;32H←

文档评论(0)

peain + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档