1、3-1 MCS-51系列单片机存储器概述 程序空间 内部数据存储空间 特殊功能寄存器 位地址空间 外部数据I/O空间外部程序空间EPROM内部/EA=1外部/EA=08031RAM805287528032特殊功能寄存器S FR位地址空间外部数据存储器I/O空间64KFFFFH1000H0FFFH0000H数据缓冲区位地址区寄存器区FFH80H00H1FH20H2FH30F7FH80HFFH00H7FH80HFFH0000HFFFFH3-2 程序空间 805l单片机内部设置有4KB的ROM、8751单片机内部设置有4KB的EPROM作为内部程序存储器,而8031内部没有程序存储器,必须外接程序存
2、储器。由于MCS51单片机设置有l 6位的程序计数器,因此可以寻址64KB的程序存储器。程序存储器的作用是用于存放编好的程序和表格常数,程序存储器可通过MOVC指令访问。单片机一般作为专用计算机使用,因此程序存储器通常选用ROM或EPROM来固化用户程序。3-3 内部数据存储器(内部RAM)MCS-51系列单片机 8031/8051/8751 内部有128字节 8032/8052/8752 内部有256字节一、MCS-51系列单片机内部存储器分布 数据存储器在物理上和逻辑上都分为二个地址空间:一个内部和一个外部数据存储器空间。访问内部数据存储器,用MOV指令,访问外部数据存储器用MOVX指令。
3、805l单片机内部设置有128B的内部数据存储器和128B的特殊功能寄存器寻址空间,在特殊功能寄存器寻址空间离散地分布着19个特殊功能寄存器。1、内部数据存储器 (1)寄存器区 内部数据存储器的00H一1FH(共32个单元)为4个寄存器工作区,每区8个寄存器,表示为R0R7。由于每个寄存器区8个寄存器都记为R0一R7,因此每次只能选择一个寄存器区工作。寄存器工作区的选择是通过状态标志寄存器PSW的第3、4位也即RSl、RS0进行,如表41。(2)位寻址区 内部数据存储器20H一2FH(16个单元)既可按字节寻址,作为一般工作单元,又可以按位由CPU直接寻址,进行位操作。这16个字节每字节8位,
4、共有168128位,占用地址为00H-7FH(位地址),如表42所示。应用这些位单元,可以方便地进行各种布尔逻辑操作。(3)一般缓冲存储区 (3)一般缓冲存储区 内部RAM块中的30H一7FH构成一般缓冲存储区,可用于存放数据,也可作为堆栈。数据区的规划:(1)用0区或1区;(2)32位;(3)数据区:30H5FH;(4)规划堆栈区。3-4 特殊功能寄存器(SFR)805l内部有21个专用寄存器,其中有4个双字节寄存器,PC寄存器在物理上是独立的,其余20个寄存器都属于内部数据存储器的专用寄存器(SFR)块。一、地址分布:SFR离散分布80HFFH 编址:RAM统一编址二、SFR的地址映像3-
5、5 位地址空间 一、地址分布 1、由RAM的20H2FH提供00H7FH 2、由SFR字节地址能被8整除SFR提供(离散)二、位地址图 (一)RAM区位地址映像(二)SFR位地址映像3-6 外部数据I/O空间 MCS51外部数据存储器寻址空间为64KB,这对多数应用领域已足够使用。对外部数据存储器可用R0、R1及DPTR间接寻址寄存器。R0、R1为8位寄存器,寻址范围为256B,DPTR为16位的数据指针寄存器,寻址范围为64KB。2FH7FH78H2EH77H70H2DH6FH68H2CH67H60H2BH5FH58H2AH57H50H29H4FH48H28H47H40H27H3FH38H26H37H30H25H2FH28H24H27H20H23H1FH18H22H17H10H21H0FH08H20H07H06H05H04H03H02H01H00H字节地址位地址D7 D6 D5 D4 D3 D2 D1 D0