分析at89s52单片机的存储器结构

如题所述

1. 程序存储器
程序存储器用于存放设计人员编写的微处理器程序。AT89S52单片机拥有64KB的程序存储器寻址空间,用于存储用户程序、数据和表格等信息。程序存储器的结构如图1所示。
图1 AT89S52程序存储器结构
AT89S52的片内和片外程序存储器在统一的逻辑地址空间内,地址范围从0000h到FFFFh,总共有64KB。当引脚接高电平时,程序从片内程序存储器的0000h开始执行,即访问片内存储器。如果PC值超出片内ROM的容量,系统会自动切换到片外程序存储器空间执行。当引脚接低电平时,系统强制执行从片外程序存储器0000h开始存放的程序。
2. 数据存储器
AT89S52包含256字节的片内数据存储器,地址范围为00h到FFh。这256个单元分为两部分:00h到7Fh单元(共128个字节)是用户数据RAM;80h到FFh单元(也是128个字节)是特殊功能寄存器(SFR)单元。高128字节与SFR有相同的地址,但物理上是分开的。在00h到1Fh的32个单元中,被均匀分为四块,每块包含八个8位寄存器,以R0到R7命名,称为通用寄存器。这四块中的寄存器都称为R0到R7,利用PSW的第3和第4位(RS0和RS1)可以选择这四组通用寄存器。内部数据存储器的20h到2Fh单元为位寻址区,可以作为一般单元用字节寻址,也可以对它们的位进行寻址。
3. 中断服务程序入口地址
在程序存储区中,为中断服务程序保存了一段中断服务程序的入口地址。其中一组特殊单元是0003h到0032h,各个单元各有用途,被分为六段,每个段8个字节,专门留给中断服务程序使用,被称为中断矢量区。AT89S52共有8个中断源,6个中断矢量。
4. 特殊功能寄存器(SFR)
特殊功能寄存器是有特殊用途的寄存器集合,也称为专用寄存器。它们是一些具有特殊功能的片内RAM单元,反映单片机的运行状态,很多功能也通过特殊功能寄存器来定义和控制程序的执行。AT89S52单片机内部高128(80到FFh)地址分配给特殊功能寄存器。这个地址空间和芯片内数据存储器的高128字节地址完全重叠,但两者在物理硬件上是完全独立的。使用直接寻址方式访问这个地址空间时,访问的是特殊功能寄存器;使用间接虚消寻址方式访问这个地址空间时,访问的是数据存储器。AT89S52有32个特殊功能寄存器,它们被离散地分布在内部RAM的80h到FFh地址中,这些寄存的功能已作了专门的规定,用户不能修改其结构。
5. 注意事项
(1)地址的重叠性
单片机中的所有存储器都必须分配地址,可以寻址的地址范围为64KB。数据存储器与程序存储器都占用相同的地址。程序存储器中片内片外0000h到0FFFFh低4KB地址完全重叠,但我们使用引脚来区分:引脚接低电平时,选择片外存储器;接高电平时,选择片内存储器,这样就完全区分开来了。数据存储器中片内外0000h到00FFh的256个单元地址完全重叠,片内外数据的访问采用不同指令来区分:MOV指令访问片内数据存储器,MOVX指令访问片外数据存储器。
(2)程序存储器(ROM)与数据存储器(RAM)的区分
程序存储器(ROM)与数据存储器(RAM)的区分在使用上是严格区分的。程序存储器只能放置程序指令及常数表格,对程序存储器中数据的访问只可以使用MOVC指令。而数据存储器则存放数据,片内外的操作指令分别用MOV、MOVX进行操作。
(3)位地址空间的区域划分
片内RAM中的20h到2Fh的128位,以及SFR中的位地址,这些位寻址单元与位指令集构成了位处理器系统。
温馨提示:内容为网友见解,仅供参考
无其他回答

分析at89s52单片机的存储器结构
at89s52 有256 字节片内数据存储器。地址为00h~ffh。这256个单元共分为两部分。其一是地址从00h~7fh单元(共128个字节)为用户数据ram。从80h~ffh地址单元(也是128个字节)为特殊寄存器(sfr)单元。高128 字节与特殊功能寄存器重叠,也就是说高128字节与特殊功能寄存器有相同的地址,而物理上是分开...

说明AT89S52单片机内RAM低128字节和高128字节的用途
AT89S52 有256 字节片内数据存储器。高128 字节与特殊功能寄存器重叠。也就是说高128字节与特殊功能寄存器有相同的地址,而物理上是分开的。当一条指令访问高于7FH 的地址时,寻址方式决定CPU 访问高128 字节RAM 还是特殊功能寄存器空间。直接寻址方式访问特殊功能寄存器(SFR)。例如,下面的直接寻址指令访...

单片机的问题,
AT89S52的内部数据存储器RAM共有256个单元,也叫256个字节(不是位),字节地址是00H-FFH,并不是80H-FFH,在哪看的是80H-FFH?那80H-FFH地址有两个意思,一是:特殊功能寄存器的地址是这个,只能用直接寻址。内部RAM的低128字节地址是00H-7FH,可以直接寻址,也可以间接寻址。而高128字节地址才是...

AT89S52单片机内设有四个并行的I\/O,使用时有哪些特点和分工
AT89S52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程 AT89S52引脚图 DIP封装 Flash 存储器。使用Atmel 公司高密度非 易失性存储器技术制造,与工业80C51 产品指令和引脚完 全兼容。片上Flash允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系...

AT89S52单片机的片内数据存储器,又分为哪几部分?
输入\/输出数:32 程序存储器大小:8KB 存储器容量, RAM:256Byte 处理器速度:24MHz 振荡器类型:External 计时器数:3 周边设备:Timer 接口:UART 电源电压范围:4V ~ 5.5V 工作温度范围:-40°C ~ +85°C 针脚数:44

急求AT89S52芯片简介 要做论文的那种
AT89S52单片机为40引脚芯片如图5-1所示,具有PDIP,PLCC和TQFP3钟封装形式。各引脚的功能如下:●P0口——8位、开漏极、双向I\/O口。当用做通用I\/O口时,每个引脚可驱动8个TTL负载;当用做输入时,每个端口首先置1。P0口也可用做访问片外数据存储器和程序存储器时的低8位地址\/数据总线的复用口。

at89s52单片机简介
AT89S52单片机是一款基于8051内核的8位微控制器,由Atmel公司生产。它继承了8051单片机的经典结构和指令系统,同时增加了许多实用的功能和特性。AT89S52单片机采用了CMOS工艺,具有低功耗和高性能的特点。它内置了8KB的Flash存储器,可以用于存储程序和数据。此外,它还提供了32个I\/O端口、两个16位定时器\/...

AT89S52单片机内部有哪些主要逻辑功能部件
运算器(累加器) 通用寄存器 程序计数器 指令译码器 特殊功能寄存器 ROM等

求助!!!单片机内部RAM是如何划分的?
AT89s52片内用户使用RAM为256字节,地址范围00~ffh。低128字节RAM根据存储器用途,分为三部分。00h~1fh为通用工作寄存器区 20h~2fh为位寻址区 30h~7fh为用户RAM区 通用工作寄存器 80c51工作寄存器共分为4组,每组由8个工作寄存器R0~R7组成,共占用32个单元。每组寄存器均可选作CPU当前的工作寄存器...

at89s52单片机简介
什么是AT89S52单片机 AT89S52单片机是一种高性能、低功耗的8位单片机,由Atmel公司生产。它采用MCS-51指令集架构,具有8KB的Flash程序存储器、256字节的RAM、32个I\/O口、3个定时器\/计数器、1个串行通讯接口、1个SPI接口、1个全双工串行通讯接口等功能模块。AT89S52单片机具有低功耗、高速、可编程性强、...

相似回答
大家正在搜