MCS51 数据存储器(RAM)

  • 51 系列单片机的数据存储器分片内 RAM 和片外 RAM 两部分。通常片内数据存储器有 128B,对应的地址范围是 00H~7FH;增强型片内数据存储器有 256B,
    对应的地址范围是 00H~0FFH。片外数据存储器 RAM 最多可扩展至 64KB,地址范围为0000H~0FFFFH。
  • 256B 片内数据存储器空间,可分为两个部分。 128B RAM 区(00H~7FH)与一
    般型单片机的 RAM 区相同,用直接或间接地址方式访问。 128B RAM 区(80H~0FFH)与特殊功能寄存器 SFR(Special Function Register 80H~0FFH)区的地址重叠。需用不同的访问方式来区分,访问 SFR 采用直接地址方式,访问 RAM 区(80H~0FFH)采用寄存器间接地址方式。
  • 片内 RAM 和片外 RAM 的低地址 0000H~007FH 范围是重复的,但这是两个不同的物理空间,用不同的指令访问以区分它们。
    在这里插入图片描述
    (1) 低128字节的区域
    ①工作寄存器区(00H~1FH)
    ②可位寻址区(20H~2FH)
    ③用户RAM区(30H~7FH)
    在这里插入图片描述
    (1)工作寄存器区
    工作寄存器区是内部 RAM 区的 00H~1FH 单元,共 32 字节,分为 4 个工作寄存器组。每组 8 个工作寄存器,分别用 R0~R7 标记。由于他们的功能及使用不做预先的规定,因此也称为通用寄存器组。在任一时刻,CPU 只能使用其中的一组工作寄存器,这一组寄存器也称为当前寄存器组。究竟使用那一组,由程序状态字寄存器 PSW(Program Status Word)中的 RS1、RS0 位的状态组合来决定。
    在这里插入图片描述
    (2)位寻址区
    片内数据存储器的 20H~2FH 单元、共 16 个字节,既可按字节进行操作,也可以对字节中的每一位进行位操作(共 128 位),因此该区称为位寻址区。位地址为 00H~7FH。
    在这里插入图片描述
    (3)用户 RAM 区。片内数据存储器的 30H~7FH 单元,用来存储用户数据,操作指令丰富,数据处理方便灵活。在应用中通常把堆栈设置在此区域中。

(2)高128字节RAM区
特殊功能寄存器区域,片内数据存储器的高 128 字节单元供专用寄存器使用,它们分布在单元地址为80H~0FFH 的空间中。由于这些寄存器的功能已经作了特殊规定,通常用来存储当前要执行的指令的存储地址、操作数和指令执行后的状态等信息。因此也称为特殊功能寄存器,简称为 SFR 寄存器。访问 SFR 只能使用直接地址方式。其中的 11 个具有位寻址功能,它们的字节地址能够被 8 整除,即字节地址的十六进制数最低位是 0或 8。
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值