内部数据存储器低128单元
MCS-51单片机内部数据存储器RAM结构详解

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 提供了就近存储数据的便利,有利于提高单片机的运算速度。
此外,使用通用寄存器还能提高程序编制的灵活性,因此,在单片机
的应用编程中应充分利用这些寄存器,以简化程序设计,提高程序运行速。
单片微型计算机原理及应用课后答案—华中科技大学.

习题22.1 MCS-51单片机内部包含哪些主要逻辑功能部件?答:微处理器(CPU)、数据存储器(RAM)、程序存储器(ROM/EPROM)、特殊功能寄存器(SFR)、并行I/O口、串行通信口、定时器/计数器及中断系统。
2.2 说明程序计数器PC和堆栈指针SP的作用。
复位后PC和SP各为何值?答:程序计数器PC中存放将要执行的指令地址,PC有自动加1功能,以实现程序的顺序执行。
它是SFR中唯一隐含地址的,因此,用户无法对它进行读写。
但在执行转移、调用、返回等指令时能自动改变其内容,以实现改变程序的执行顺序。
程序计数器PC中内容的变化决定程序的流程,在执行程序的工作过程中,由PC输出将要执行的指令的程序存储器地址,CPU读取该地址单元中存储的指令并进行指令译码等操作,PC则自动指向下一条将要执行的指令的程序存储器地址。
SP是一个8位的SFR,它用来指示堆栈顶部在内部RAM中的位置。
系统复位后SP为07H,若不对SP设置初值,则堆栈在08H开始的区域,为了不占用工作寄存器R0~R7的地址,一般在编程时应设置SP的初值(最好在30H~7FH区域)。
2.3 程序状态字寄存器PSW的作用是什么?其中状态标志有哪几位?它们的含义是什么?答:PSW是保存数据操作的结果标志,其中状态标志有CY(PSW.7):进位标志,AC(PSW.6):辅助进位标志,又称半进位标志,F0、F1(PSW.5、PSW.1):用户标志;OV(PSW.2):溢出标志;P(PSW.0):奇偶标志。
2.4 什么是堆栈? 堆栈有何作用? 为什么要对堆栈指针SP重新赋值? SP的初值应如何设定?答:堆栈是一种数据结构,所谓堆栈就是只允许在其一端进行数据写入和数据读出的线性表。
其主要作用有两个:保护断点和保护现场。
堆栈区的设置原则上可以在内部RAM的任意区域,但由于MCS-51单片机内部RAM的00H~1FH 地址单元已被工作寄存器R0~R7占用,20H~2FH为位寻址区,故堆栈一般设在30H~7FH(对于8032系列芯片可为30H~0FFH)的区域内。
C51单片机习题答案

任务1 认识51单片机1.80C51单片机控制线有几根?每一根控制线的作用是什么?RST:第9引脚。
——复位信号。
上电和手动复位电路如图1-4所示。
其中C、R1构成上电复位,K、R2、R1、构成手动复位,复位电路是否有效,关键看9脚产生的高电平维持的时间是否大于单片机的2个机器周期以上,这由RC充放电常数决定。
另外,产生高电平的上升沿是否坚挺也比较关键,否则将不利于复位。
2.图1-4 上电和手动复位电路EA/Vpp:第31脚,外部寻址使能/编程电压。
EA为高电平,从内部程序寄存器开始访问;EA为低电平时,则跳过内部程序存储器,从外部程序存储器开始访问。
在编程期间,此端子为编程电压输入端,根据选择不同的单片机芯片选择不同的编程电压(可根据编程软件选择芯片)。
ALE/PROG:第30引脚。
——地址锁存允许信号。
第一功能:访问外部存储器时:ALE用来锁存扩展地址的低8位(P0口)的地址信号。
当不访问外部存储器时:ALE将输出1/6的振荡频率,可用来对外部提供定时和时钟信号。
第二功能:单片机编程时,此脚接编程脉冲。
PSEN:第29引脚。
——外部程序存储器读选通信号。
当访问外部存储器时,此脚将定时输出负脉冲作为读取外部存储器的选题信号。
2.试述P3口的第二功能。
P3口:第10~17引脚。
作为I/O口。
作控制和特殊功能口使用。
P3口各位的第二功能见表1-2。
表1-2 P3口各位的第二功能P3口各位第二功能功能P3.0 RXD 串行数据接收口P3.1 TXD 串行数据发送口P3.2 0INT外中断0输入P3.3 1INT外中断1输入P3.4 T0 计数器0计数输入P3.5 T1 计数器1计数输入P3.6 W R外部RAM写选通信号P3.7 RD外部RAM读选通信号3.80C51内RAM的组成是如何划分的,各有什么功能?内部数据存储器低128单元按其用途划分为三个区域。
1.通用寄存器区四组通用寄存器,每组8个寄存器单元,每组都以R0~R7为寄存器单元编号。
单片机应用技术(C语言版)习题1解答

习题11.单项选择题。
(1)MCS-51系列单片机的CPU主要由(A)组成。
A运算器、控制器B加法器、寄存器C运算器、加法器D运算器、译码器(2)单片机中的程序计数器PC用来( C )。
A存放指令B存放正在执行的指令地址C存放下一条指令地址D存放上一条指令地址(3)外部扩展存储器时,分时复用做数据线和低8位地址线的是( C )。
AP0口BP1口CP2口DP3口(4)PSW中的RS1和RS0用来( D )。
A选择工作寄存器组B指示复位C选择定时器D选择工作方式(5)单片机上电复位后,PC的内容为( A )。
A0000H B0003H C000BH D0800H(6)8051单片机的CPU是( C )位的。
A16 B4 C8 D准16位(7)程序是以( C )形式存放在程序存储器中的AC语言源程序B汇编程序C二进制编码DBCD码2.填空题。
(1)单片机应用系统是由(硬件)和(软件)组成的。
(2)除了单片机和电源外,单片机最小系统包括(时序)电路和(复位)电路。
(3)在进行单片机应用系统设计时,除了电源和地线引脚外,(XTAL1 )、(XTAL2 )、(RST )、(EA )引脚信号必须接相应电路。
(4)MCS-51系列单片机的存储器主要有4个物理存储空间,即(内部程序存储器)、(内部数据存储器)、(外部程序存储器)、(外部数据存储器)。
(5)MCS-51系列单片机的XTAL1和XTAL2引脚是(时序)引脚。
(6)MCS-51系列单片机的应用程序一般存放在(ROM )中。
(7)片内RAM低128单元,按其用途划分为(工作寄存器区)、(位选址区)和(用户RAM区)3个区域。
(8)当振荡脉冲频率为12MHz时,一个机器周期为(1us );当振荡脉冲频率为6MHz时,一个机器周期为(2us )。
(9)MCS-51系列单片机的复位电路有两种,即(上电复位)和(按键复位)。
3. 问答题。
(1)什么是单片机?答:单片机是一种集成电路芯片,是单片微型计算机的简称。
第二章 80c51硬件结构

•
• • •
(2) 寄存器B (8位):
2.1.2
80C51内部逻辑结构组成
2.内部数据存储器(RAM)
低128字节区:用户RAM区为128x8Byte,地址为00H~
7FH。用于存放运算的中间结果、数据暂存以及数据缓 冲等。 高128字节区:特殊寄存器RAM区128x8Byte,地址为 80H~FFH。有21个特殊功能寄存器(SFR),存放功能 部件的控制命令、状态或数据等。 特点:掉电数据丢失。
失,使得复位后能继续正常运行。
三、控制信号引脚:RST、ALE、PSEN和EA
ALE/PROG(30脚):
ALE:地址锁存允许信号端。正常工作时,该引脚以 振荡频率的1/6固定输出正脉冲,可作为外部定时 脉冲使用。 CPU访问片外存储器时,该引脚输出信号作为锁存 低8位地址的控制信号。它的负载能力为8个LS型 TTL负载。
字 节 地 址
位地址
2.2.3
内部数据存储器高128单元
1 特殊寄存器概述
用于存放单片机各个功能部件的控制命令、状态或数据的寄存 器叫特殊寄存器,其功能已经由单片机规定。
1. 有21个特殊功能功能寄存器,地址不连续分布在80H~FFH的 RAM空间,剩余空闲单元用户并不能使用,读出不确定,写入 被舍弃。
片内数据存储器 MOV,
片外数据存储器 MOVX, RD WR作选通信号操作 逻辑上3个存储器地址空间(软件角度) : 64KB 程序存储器: 统一编地址,0000H-FFFFH 256B 片内数据存储器:独立编地址 0000H-00FFH 64KB 片外数据存储器:独立编地址 0000H-FFFFH
(1)运算电路 构成: 运算部件以算术逻辑运算单元ALU为核心,包 含累加器ACC、B寄存器、暂存器、标志寄存器PSW等, 功能: 它能实现算术运算、逻辑运算 。
51单片机存储器内部结构

MCS-51单片机在物理结构上有四个存储空间:1、片内程序存储器2、片外程序存储器3、片内数据存储器4、片外数据存储器但在逻辑上,即从用户的角度上,8051单片机有三个存储空间:1、片内外统一编址的64K的程序存储器地址空间(MOVC)2、256B的片内数据存储器的地址空间(MOV)3、以及64K片外数据存储器的地址空间(MOVX)在访问三个不同的逻辑空间时,应采用不同形式的指令(具体我们在后面的指令系统学习时将会讲解),以产生不同的存储器空间的选通信号。
程序内存ROM寻址范围:0000H ~ FFFFH 容量64KBEA = 1,寻址内部ROM;EA = 0,寻址外部ROM地址长度:16位作用:存放程序及程序运行时所需的常数。
七个具有特殊含义的单元是:0000H ——系统复位,PC指向此处;0003H ——外部中断0入口000BH —— T0溢出中断入口0013H ——外中断1入口001BH —— T1溢出中断入口0023H ——串口中断入口002BH —— T2溢出中断入口内部数据存储器RAM物理上分为两大区:00H ~ 7FH即128B内RAM 和 SFR区。
作用:作数据缓冲器用。
下图是8051单片机存储器的空间结构图程序存储器一个微处理器能够聪明地执行某种任务,除了它们强大的硬件外,还需要它们运行的软件,其实微处理器并不聪明,它们只是完全按照人们预先编写的程序而执行之。
那么设计人员编写的程序就存放在微处理器的程序存储器中,俗称只读程序存储器(ROM)。
程序相当于给微处理器处理问题的一系列命令。
其实程序和数据一样,都是由机器码组成的代码串。
只是程序代码则存放于程序存储器中。
MCS-51具有64kB程序存储器寻址空间,它是用于存放用户程序、数据和表格等信息。
对于内部无ROM的8031单片机,它的程序存储器必须外接,空间地址为64kB,此时单片机的端必须接地。
强制CPU从外部程序存储器读取程序。
8051单片机指令系统的7种寻址方式解析

8051单片机指令系统的7种寻址方式解析寻址方式:寻址就是寻找操作数的地址。
绝大多数指令执行时都需要操作数,因此就存在如何确定操作数地址的问题。
所谓寻址方式就是通过什么途径获取操作数的方式。
根据指令操作的需要,计算机总是提供多种寻址方式。
一般来说,寻址方式越多计算机的寻址能力就越强,但指令系统也就越复杂。
8051指令系统有7种寻址方式:寄存器寻址,直接寻址,寄存器间接寻址,立即寻址,基址寄存器加变址寄存器间接寻址,相对寻址,位寻址,下面分别介绍。
寄存器寻址寄存器寻址:寄存器寻址就是操作数在寄存器中,因此指定了寄存器就得到了操作数。
采用寄存器寻址方式的指令都是一字节的指令,指令中以符号名称来表示寄存器。
例如:MOV A R1 这条指令的功能是把工作寄存器R1的内容传送到累加器A中,由于操作数在R1中,因此指令中指定了R1,也就得到了操作数。
寄存器寻址方式的寻址范围包括:工作寄存器组R0~R7,部分特殊寄存器ACC,B,DPTR 等。
直接寻址直接寻址:直接寻址就是在指令中直接给出操作数所在单元的真实地址。
这里给出的操作数直接地址为8位二进制地址。
程序中一般用十六进制数表示。
例如:指令MOV A,30H 把内部RAM单元30H中的数据传送给累加器A,指令中30H就是操作数的直接地址。
直接寻址方式的寻址范围包括:内部数据存储器低128单元,特殊功能寄存器。
特殊功能寄存器在指令的表示中除了可以以直接地址形式给出外,还可以以寄存器符号形式给出,如对累加器A,在指令中可使用其直接地址OEOH,也可使用其符号形式ACC。
立即寻址立即寻址:立即寻址方式就是实际操作数作为指令的一部分,在指令中直接给出,取指令时,可在程序存储器中直接取得操作数。
通常把出现在指令中的操作数称为立即数。
采用立即寻址方式的指令,在立即数前面加上。
2.2MCS—51单片机的存储器

2.2 MCS—51单片机的存储器MCS-51的存储器结构与常见的微型计算机的配置方式不同,它把程序存储器和数据存储器分开,各有自己的寻址系统、控制信号和功能。
程序存储器用来存放程序和始终要保留的常数,数据存储器通常用来存放程序运行中所需要的常数或变量。
MCS-51的存储器结构如图2.4所示。
在本节中我们将对单片机的内部数据存储器、内部程序存储器和外部存储器分别作一介绍。
图2.4 MCS-51存储器配置2.2.1 内部数据存储器对于8051单片机,其内部共有256个数据存储器单元,其中低128字节(00H~7FH)为真正的用户RAM区,其空间分配如图2.5所示;高128字节(80H~FFH)为特殊功能寄存器区。
1. 内部数据存储器低128单元在低128字节存储单元中,前32个单元(00H~1FH)作为工作寄存器使用,这32个寄存器分作4组,每组由8个通用寄存器(R0~R7)组成,组号依次为0、1、2和3。
通过对程序状态字中RS1和RS0的设置,可以决定选用哪一组工作寄存器,通常没有选中的单元也可作为一般的数据缓存使用。
系统上电复位时,默认选中第0组寄存器。
在表2-1中给出了工作寄存器地址表。
表2-1 工作寄存器地址表工作寄存器中R0和R1可以进行直接寻址或间接寻址,而R2~R7只可以进行直接寻址。
通用寄存器为CPU提供了数据就近存取的便利,大大提高了单片机的处理速度。
在工作寄存器后的16个数据单元(20H~2FH),它们既可以作为一般的数据单元使用,由可以按位对每个单元进行操作,因此这16个数据单元又称作位寻址区。
位寻址区共计128位,其位地址为00H~0FH,位地址表如表2-2。
表2-2 内部RAM位寻址区的位地址。