MCS-51单片机存储器结构解析

版权申诉
0 下载量 196 浏览量 更新于2024-08-07 收藏 67KB DOC 举报
"本文档主要介绍了MCS-51单片机的存储器结构,包括片内和片外的程序存储器、数据存储器,并详细阐述了各部分的作用、寻址方式以及中断入口地址。" MCS-51单片机的存储器结构是其核心功能之一,它分为四个物理空间和三个逻辑空间。物理空间包括: 1. **片内程序存储器**:通常用于存储固化在芯片内的程序代码,地址范围为0000H到FFFFH,总共64KB。在系统复位后,程序计数器(PC)会指向0000H,开始执行程序。当EA引脚为1时,单片机会优先从片内ROM执行程序;如果超过片内ROM的容量,且EA仍为1,会自动转向片外ROM。 2. **片外程序存储器**:对于像8031这样内部没有ROM的单片机,需要外部扩展ROM,此时EA引脚需接地,使得CPU从外部ROM开始执行程序。若EA为0,无论8051还是8031,都会从外部ROM执行。 3. **片内数据存储器**:也称为RAM,包括00H到7FH的128字节的常规RAM区域和SFR(特殊功能寄存器)区域。常规RAM用于临时存储数据和作为数据缓冲器,SFR区包含了一些具有特定功能的寄存器,如累加器A、寄存器B等。 4. **片外数据存储器**:当需要超过256字节的RAM时,可以通过MOVX指令访问64KB的片外数据存储空间。 在逻辑上,这些空间被划分为: 1. **64K的程序存储器地址空间**:统一编址,无论片内或片外,都由MOVC指令访问。 2. **256B的片内数据存储器地址空间**:由MOV指令访问,包含常规RAM和SFR。 3. **64K的片外数据存储器地址空间**:由MOVX指令访问。 中断系统也是MCS-51的重要特性,特定的地址有特定的中断入口: - 0000H:系统复位后PC的初始位置。 - 0003H:外部中断0的入口。 - 000BH:定时器/计数器0溢出中断入口。 - 0013H:外部中断1的入口。 - 001BH:定时器/计数器1溢出中断入口。 - 0023H:串行口中断入口。 - 002BH:定时器/计数器2溢出中断入口。 程序存储器中的数据是不可修改的,通常包含程序代码、初始化数据和表格等。而数据存储器则用于存储运行时的变量、中间计算结果和暂存数据。理解MCS-51的存储器结构对编写有效的程序至关重要,因为它影响到程序的存储、数据处理和中断服务等功能的实现。