简述单片机内部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),也可称为特殊功能寄存器。
简述单片机内部RAM地址空间、内部特殊功能寄存器空间、及位寻址空间的区别,
如果它们之间存在地址重叠
------
增强型 51 单片机(即所谓 52 单片机)的片内 RAM 共有 256 个单元。
地址范围是:00H~FFH。
其中 00H~1FH,是工作寄存器区。
其中 20H~2FH,是位寻址区,其位地址是:00H~FFH。
其中 30H~7FH,是通用数据存储区,直接寻址、间接寻址的指令都可以使用。
其中 80H~FFH,也是通用数据存储区,但是,只可用间接寻址的指令。
--------
此外,单片机中还有一些外部设备,也称为“特殊功能寄存器”。
其 IO 接口地址位于:80H~FFH。
对 IO 接口操作,只可以用直接寻址的指令。
单片机的内部 RAM 地址空间、特殊功能寄存器空间及位寻址空间的区别。
-----------------------
空间?
哪有什么空间?
三维的,才可称为“空间”。
一个存储器,根本不配用“空间”来形容。
存储器的地址,只是一维而已,称为“地址范围”才合理。
结合“位数”得出存储器的“容量”,这也只不过是二维而已。