MCS-51 单片机内部数据存储器 RAM 结构详解
内部数据存储器低 128 单元
8051 单片机的内部 RAM 共有 256 个单元,通常把这 256 个单元按其功能 划分为两部分:低 128 单元(单元地址 00H~7FH)和高 128 单元(单元地址 80H~FFH)。如图所示为低 128 单元的配置图。 寄存器区
8051 共有 4 组寄存器,每组 8 个寄存单元(各为 8),各组都以 R0~R7 作寄 存单元编号。寄存器常用于存放操作数中间结果等。由于它们的功能及使用 不作预先规定,因此称之为通用寄存器,有时也叫工作寄存器。4 组通用寄 存器占据内部 RAM 的 00H~1FH 单元地址。
在任一时刻,CPU 只能使用其中的一组寄存器,并且把正在使用的那组寄 存器称之为当前寄存器组。到底是哪一组,由程序状态字寄存器 PSW 中 RS1、RS0 位的状态组合来决定。
通用寄存器为 CPU 提供了就近存储数据的便利,有利于提高单片机的运算 速度。此外,使用通用寄存器还能提高程序编制的灵活性,因此,在单片机 的应用编程中应充分利用这些寄存器,以简化程序设计,提高程序运行速
度。 位寻址区
内部 RAM 的 20H~2FH 单元,既可作为一般 RAM 单元使用,进行字节操 作,也可以对单元中每一位进行位操作,因此把该区称之为位寻址区。位寻 址区共有 16 个 RAM 单元,计 128 位,地址为 00H~7FH。MCS-51 具有布 尔处理机功能,这个位寻址区可以构成布尔处理机的存储空间。这种位寻址 能力是 MCS-51 的一个重要特点。
用户 RAM 区
在内部 RAM 低 128 单元中,通用寄存器占去 32 个单元,位寻址区占去 16 个单元,剩下 80 个单元,这就是供用户使用的一般 RAM 区,其单元地址为 30H~7FH。对用户 RAM 区的使用没有任何规定或限制,但在一般应用中常 把堆栈开辟在此区中。
内部数据存储器高 128 单元
内部 RAM 的高 128 单元是供给专用寄存器使用的,其单元地址为 80H~ FFH。因这些寄存器的功能已作专门规定,故称之为专用寄存器(Special Function Register),也可称为特殊功能寄存器。