① MCS-51 内部RAM一共多少个单元
但是某些型号的可能要多 毕竟不是一家在生产 补充: 关于MCS-51 单片机的存储器地址空间,讲起来,要用几页的篇幅。 简单介绍如下: MCS-51的存储器有片内RAM、片外RAM 和 ROM 三个空间。 --------片内RAM:地址范围是00H到7FH (52系列延伸到FFH)。 其中00H到1FH,共32字节,分成四个工作寄存器区,每区有寄存器 R0~R7。 对此区域,可以使用 R0~R7 来操作,代码短捷,但是,只有一个当前工作区是可以这样读写的。 对此区域,也可以使用字节地址,来读写。 --20H-2FH,共16字节,是位寻址区,共有128个“位”,位地址:00~7FH。 此区域,也可按照字节寻址,来读写。 --80H-FFH,共有128个地址号码,其中离散的分布着21个特殊功能寄存器,必须直接寻址才能读写。 (52系列,在此范围,还有128字节的 RAM,必须间接寻址才能读写)。 对上述空间读写,必须使用 MOV 指令。 --------片外RAM:片外RAM的地址范围是0000H到FFFFH,容量即为64KB。 对片外RAM读写,必须使用 MOVX 指令。 --------ROM:ROM的地址范围是0000H到FFFFH,容量即为64KB。 其中0000~0FFFH,即4K,在片内,其它在片外。 (对于8031,这64K的ROM,都在片外。) 对ROM读出,必须使用 MOVC 指令。 追问: 片内低128单元和片内高128单元能和到一起来说是256个单元吗? 回答: 高128不是都有的,只有几个特殊的存在的。
② 简述MCS-51单片机内部RAM地址空间、内部特殊功能寄存器及位地址空间的区别
mcs-51单片机内部ram分配如下:
00h~1fh:为工作寄存器地址,共四组
20h~2fh:为位地址空间,位地址范围为00h~7fh
30h~7fh:为用户使用的ram空间
80h~ffh:为特殊功能寄存器空间。
③ MCS-51系列单片机的存储器可划分为几个空间,地址范围以及容量是多少
MCS-51单片机在物理的角度上有四个存储空间:
1、片内程序存储器
2、片外程序存储器
3、片内数据存储器
4、片外数据存储器
但在逻辑上,从用户的角度上,单片机有三个存储空间:
1、片内外统一编址的64K的程序存储器地址空间(MOVC)
2、256B的片内数据存储器的地址空间(MOV)
3、以及64K片外数据存储器的地址空间(MOVX)
④ 简述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),也可称为特殊功能寄存器。
⑤ 51单片机的存储器分为哪几个空间
1)MCS-51单片机的存储器从物理结构上分为:片内和片外数据存储器,片内和片外程序存储器。
2)从逻辑上分别可划分为:片内统一寻址的64K程序存储器空间(0000H---FFFFH);64KB的片外数据存储器空间(0000H---FFFFH);256B的片内数据存储器空间(00H---FFH)。
(5)mcs51ram存储空间扩展阅读:
使用方法:
1、将仿真器插入需仿真的用户板的CPU插座中,仿真器由用户板供电;
2、将仿真器的串行电缆和PC机接好,打开用户板电源;
3、通过KeilC 的IDE开发仿真环境UV2 下载用户程序进行仿真、调试。
硬件说明
1、使用用户板的晶振:仿真器晶振旁有两组跳线用来切换内部晶振和用户板晶振,当两个短路块位于仿真器晶振一侧时,默认使用仿真板上的晶振(11.0592MHz), 当两个短路块位于电容一侧时,使用用户板的晶振。
2、为便于调试带看门狗的用户板,仿真器的复位端未与用户板复位端相连;故仿真器的复位按钮只复位仿真器,不复位用户板;若要复位用户板,请使用用户板复位按钮。
⑥ 简述51单片机的存储器逻辑空间分布,并说明当存储器地址发生重叠时应如何处
MCS-51单片机存储器结构
1、 程序存储器
MCS-51具有64kB程序存储器寻址空间,它是用于存放用户程序、数据和表格等信息。对于内部无ROM的8031单片机,它的程序存储器必须外接,空间地址为64kB,此时单片机的端必须接地。强制CPU从外部程序存储器读取程序。对于内部有ROM的8051等单片机,正常运行时,则需接高电平,使CPU先从内部的程序存储中读取程序,当PC值超过内部ROM的容量时,才会转向外部的程序存储器读取程序。
8051片内有4kB的程序存储单元,其地址为0000H—0FFFH,单片机启动复位后,程序计数器的内容为0000H,所以系统将从0000H单元开始执行程序。但在程序存储中有些特殊的单元,这在使用中应加以注意:
其中一组特殊是0000H—0002H单元,系统复位后,PC为0000H,单片机从0000H单元开始执行程序,如果程序不是从0000H单元开始,则应在这三个单元中存放一条无条件转移指令,让CPU直接去执行用户指定的程序。
另一组特殊单元是0003H—002AH,这40个单元各有用途,它们被均匀地分为五段,它们的定义如下:
0003H—000AH 外部中断0中断地址区。
000BH—0012H 定时/计数器0中断地址区。
0013H—001AH 外部中断1中断地址区。
001BH—0022H 定时/计数器1中断地址区。
0023H—002AH 串行中断地址区。
可见以上的40个单元是专门用于存放中断处理程序的地址单元,中断响应后,按中断的类型,自动转到各自的中断区去执行程序。因此以上地址单元不能用于存放程序的其他内容,只能存放中断服务程序。但是通常情况下,每段只有8个地址单元是不能存下完整的中断服务程序的,因而一般也在中断响应的地址区安放一条无条件转移指令,指向程序存储器的其它真正存放中断服务程序的空间去执行,这样中断响应后,CPU读到这条转移指令,便转向其他地方去继续执行中断服务程序。
2、 数据存储器
数据存储器也称为随机存取数据存储器。MCS-51单片机的数据存储器在物理上和逻辑上都分为两个地址空间,一个是内部数据存储区和一个外部数据存储区。MCS-51内部RAM有128或256个字节的用户数据存储(不同的型号有分别),它们是用于存放执行的中间结果和过程数据的。MCS-51的数据存储器均可读写,部分单元还可以位寻址。
8051内部RAM共有256个单元,这256个单元共分为两部分。其一是地址从00H—7FH单元(共128个字节)为用户数据RAM。从80H—FFH地址单元(也是128个字节)为特殊寄存器(SFR)单元。从图1中可清楚地看出它们的结构分布。
在00H—1FH共32个单元中被均匀地分为四块,每块包含八个8位寄存器,均以R0—R7来命名,我们常称这些寄存器为通用寄存器。这四块中的寄存器都称为R0—R7,那么在程序中怎么区分和使用它们呢?聪明的INTEL工程师们又安排了一个寄存器——程序状态字寄存器(PSW)来管理它们,CPU只要定义这个寄存的PSW的第3和第4位(RS0和RS1),即可选中这四组通用寄存器。对应的编码关系如图2所示。
内部RAM的20H—2FH单元为位寻址区,既可作为一般单元用字节寻址,也可对它们的位进行寻址。位寻址区共有16个字节,128个位,位地址为00H—7FH。位地址分配如表1所示,CPU能直接寻址这些位,执行例如置“1”、清“0”、求“反”、转移,传送和逻辑等操作。我们常称MCS-51具有布尔处理功能,布尔处理的存储空间指的就是这些为寻址区。
⑦ “MCS-51系列单片机中,片内程序存储器为4KB”,而同时又说“程序存储器的寻址空间为64KB”,求区别!
4K的存储器表示这个51芯片的实际硬件的容量,你的程序受这个4K限制;
64K是51可以处理的地址能力范围,这个是潜力而已。
有能力并不表示要把所有潜力转化为实际的实力啊。
实际上,通过硬件电路的设计,是可以突破64K的限制的,不过这是另一方面的问题了。
⑧ MCS-51单片机内部RAM如何分配的
MCS-51单片机内部RAM分配如下:
00H~1FH:为工作寄存器地址,共四组
20H~2FH:为位地址空间,位地址范围为00H~7FH
30H~7FH:为用户使用的RAM空间
80H~FFH:为特殊功能寄存器空间。
⑨ MCS-51单片机内部RAM可分为几个区各区的主要作用是什么
MCS-51单片机内部RAM可分为5个区:
1、存储矩阵区:RAM的核心区域是一个寄存器矩阵,用来存储信息,称为存储矩区。
2、地址译码器区:地址译码器区的作用是将寄存器地址所对应的二进制数译成有效的行选信号和列选信号,从而选中该存储单元。
3、读/写控制器区:访问RAM时,对被选中的寄存器进行读操作还是进行写操作,是通过的读/写控制器区读写信号来进行控制的。
4、输入/输出区:RAM通过输入/输岀区与计算机的CPU交换数据。输入/输出区数据线的条数,与一个地址中所对应的寄存器位数相同。
5、片选控制区:片选控制区就是用来实现这种控制的。控制RAM被访问时,是否与CPU发生联系,与其交换信息。
(9)mcs51ram存储空间扩展阅读:
MCS-51单片机内部RAM读操作时,被选中单元的数据经数据线、输入/输出区处理后传送给CPU;写操作时,CPU将数据经输入/输出区转化、数据线存入被选中单元。
由于受RAM的集成度限制。MCS-51单片机由许多RAM组合而成。CPU访问存储器时,一次只能访问RAM中的某一片,片选控制区选中,地址译码器的输出信号控制该片某个地址的寄存器与CPU接通;当片选线接入无效电平时,则该片与CPU之间处于断开状态。