⑴ mcs-51单片机内部RAM的各部分作用
MCS-51系列单片机片内RAM共有128字节,地址范围为00H~7FH。
在这128字节中,全部都可以按照字节地址进行操作(读、写或运算),直接或间接寻址方式皆可。
在这128字节中,按照使用特点,可以分成三类:工作寄存器区、位寻址区和通用数据区。
1.工作寄存器区
在MCS-51系列单片机的片内RAM中,有四个工作寄存器区,分别称为工作寄存器区0~工作寄存器区3。
每区有八个字节,除了可以用字节地址号码操作之外,还可以用R0、R1…R7为名称对其操作。用名称进行操作,称为寄存器寻址,指令代码较为简短。
其中R0、R1可以作为间接寻址寄存器,以其中内容作为地址,能够对片内RAM(或片外RAM的256字节)进行间接寻址。
在任何时刻,只能使用一个工作寄存器区。当前使用那个区,可以通过指令设置PSW中的RS1和RS0来决定。PSW称为程序状态字,是下面要介绍的特殊功能寄存器。
通过设置RS1和RS0,可以快速切换当前工作寄存器区,适合在不同的程序段中进行保护现场。当前没有使用的工作寄存器区,不能使用R0、R1…R7等名称,但可以按字节地址对其随意读写。
复位时RS1和RS0皆初始化为0,故此复位后将自动使用工作寄存器区0。
2.位寻址区
位寻址区共有16字节,字节地址为20H~2FH,每个字节中的8个“位”,都有一个“位地址”。共有128个位,“位地址”的范围为00H~7FH。
从表2中可以看到,前面问题所提到的“位地址4EH”,是在“字节地址29H”中,是第6位。
对位寻址区可以按照“位地址”来对某一个位单独进行操作,也可以按照“字节地址”进行操作,即同时对八个位地址的内容进行操作。
MCS-51系列单片机具有一套专用的“位操作”指令(又称为布尔指令),可对这些位地址进行“与”、“或”、“非”等操作。这是该系列单片机的特色之一。
3.通用数据区
通用数据区有80字节,只能按“字节地址”(直接或间接寻址)进行操作。
上面介绍了00H~7FH地址范围内的RAM,下面接着这个地址,继续向高地址方向介绍。
在片内80H~FFH地址范围内,离散的分布着21个特殊功能寄存器(SFR),寄存器名称与地址分布见表3。
8052系列单片机,在80H~FFH范围内,还有128字节的片内通用RAM,对其操作时,则必须采用“间址”寻址方式。
而对这片地址范围内的特殊功能寄存器只能采用“直接”寻址方式进行操作。
特殊功能寄存器中有11个还可以进行“位寻址”,表3中也列出了可以位寻址的寄存器以及位地址号码。
在表3中,如果位地址为空白,则说明该寄存器不能进行“位寻址”。
由表3可以看出规律:当字节地址可以被8整除时,该字节即可以按位寻址。其最低位的“位地址”与“字节地址”相同,其他位的位地址向高位依次加1。
单片机自动完成赋予它的任务的过程,也就是单片机执行程序的过程,即一条条执行的指令的过程,所谓指令就是把要求单片机执行的各种操作用的命令的形式写下来,这是在设计人员赋予它的指令系统所决定的,一条指令对应着一种基本操作;单片机所能执行的全部指令,就是该单片机的指令系统,不同种类的单片机,其指令系统亦不同。为使单片机能自动完成某一特定任务,必须把要解决的问题编成一系列指令(这些指令必须是选定单片机能识别和执行的指令),这一系列指令的集合就成为程序,程序需要预先存放在具有存储功能的部件——存储器中。存储器由许多存储单元(最小的存储单位)组成,就像大楼房有许多房间组成一样,指令就存放在这些单元里,单元里的指令取出并执行就像大楼房的每个房间的被分配到了唯一一个房间号一样,每一个存储单元也必须被分配到唯一的地址号,该地址号称为存储单元的地址,这样只要知道了存储单元的地址,就可以找到这个存储单元,其中存储的指令就可以被取出,然后再被执行。 程序通常是顺序执行的,所以程序中的指令也是一条条顺序存放的,单片机在执行程序时要能把这些指令一条条取出并加以执行,必须有一个部件能追踪指令所在的地址,这一部件就是程序计数器PC(包含在CPU中),在开始执行程序时,给PC赋以程序中第一条指令所在的地址,然后取得每一条要执行的命令,PC在中的内容就会自动增加,增加量由本条指令长度决定,可能是1、2或3,以指向下一条指令的起始地址,保证指令顺序执行。
可以参考: http://apps.hi..com/share/detail/17443237
⑵ MCS—51单片机中片内RAM共有多少字节
128;
有些型号的会扩展到256;
还有些型号的甚至把部分片外RAM也做在片内,标称RAM会大于256bytes,
但事实上超过的部分还是要按照片外ram的寻址方式访问。
⑶ MCS-51单片机内部含有哪几类存储器各自的容量是多少
片内数据存储空间(128B的片内RAM和128B的特殊功能寄存器)和片内ROM(4k)
⑷ MCS-51系列单片机的存储器可划为几个空间其地址范围及容量是多少在使用上有何不同
1、空间划分存储器分为程序存储器(ROM)和数据存储器(RAM)两大类。程序存储器有片内和片外存储器两种;数据存储器也有片内和片外存储器两种。2、地址范围及容量程序存储器是片内外统一寻址,片内程序存储空间+片外程序存储空间=64K的存储空间(0000H-FFFFH)。而数据存储器则是单独寻址,片内数据存储空间+片外数据存储空间=128B(00H-7FH)+64KB(0000H-FFFFH)。注意:51的片内数据存储空间为128B,而增强型52的片内数据存储空间为256B。52是在51基础上增加了80H-FFH的高128B的空间。增加的这一部分只能采用间接寻址。51片内数据存储器又可分为:工作寄存器区:00H-1FH 位寻址区: 20H-2FH 通用RAM区: 30H-7FH3、使用上的不同RAM和ROM在结构上是不同的。对于RAM来说,CPU在运行时能随时进行数据修改,但却有个缺点,一旦电源掉电,存储信息将丢失。所以,它只能用来存放暂时性的输入输出数据,运算中间结果和堆栈等。(注意,要区别于FLASH。)对于ROM,它是一种写入信息不易改写的存储器。就算电源掉电,存储信息都保留不变。所以,ROM用来存放程序或常数等。 欢迎前来交流学习。
⑸ MCS-51单片机内共有多少字节单元的RAM有人说128有人说256
嘿嘿 俺来帮你回答吧
MCS-51单片机有2个子系列:
一个是51子系列 :
如 AT89C51、8051、 8751 、 8031 它们的片内数据存储器是128个字节。
另一个是52子系列:
如 AT89C52、8052、 8752 、 8032 它们的片内数据存储器是256个字节。
呵呵 满意 就选满意回答
⑹ 51子系列单片机片内RAM容量多大,分为哪几大区域
51系列单片机片内RAM容量介绍如下:
1、 51系列,00H~7FH,分三大块,00H~1FH为工作寄存器区,20H~2FH为位寄存器区,30H~7FH为用户存储器区。
2、 52系列,00H~0FFH,分四大块,前三大块与51系列相同,第四大块80H~FFH为扩展用户存储器区,与特殊功能寄存器区地址重合。
3、STC系列单片机,很多都有512B到几K的扩展RAM区,供用户使用。
⑺ MCS-51系列单片机的存储器可划分为几个空间,地址范围以及容量是多少
MCS-51单片机在物理的角度上有四个存储空间:
1、片内程序存储器
2、片外程序存储器
3、片内数据存储器
4、片外数据存储器
但在逻辑上,从用户的角度上,单片机有三个存储空间:
1、片内外统一编址的64K的程序存储器地址空间(MOVC)
2、256B的片内数据存储器的地址空间(MOV)
3、以及64K片外数据存储器的地址空间(MOVX)
⑻ MCS-51系列单片机中52子系列单片机的内部RAM有多少个字节
80C51片内RAM共256B,低128B为用户RAM区,高128B为特殊功能寄存器区。
80C52是80C51的增强型,从地址0-127为用户RAM,从128-255为用户RAM和特殊功能寄存器地址重叠空间。
另外80C32是80C31的增强型,它的情况和80C52是相同的。
⑼ MCS-51单片机内RAM低128字节与高128字节的用途
呵呵
1 MCS-51单片机内RAM低128字节 可以作为用户的数据区 保存用户的数据或作为显示缓冲区使用
2 单片机内RAM高128字节 是作为专用的特殊寄存器区来使用的 例如:80H为单片机P0口的地址
90H 为单片机P1口的地址 0E0H 为单片机的累加器AD 地址
呵呵 满意就选满意回答哦
⑽ 简述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),也可称为特殊功能寄存器。