存储器、堆栈、SFR
1 存储器、堆栈、SFR
单片机的存储罪几个有关的概念: 数据存储器RAM( Random access Memory ◆程序存储器RoM( Read Only Memory) 闪速存储器 Flash Memory . EPROM-( UV)Erazible Programmable ROM EEPROM/E2PROM--Electrical Erasable Programmable ROM ◆静态存储器 SRAM-Static RAM (动态存储器 DRAM--Dynamic RAM) ◆按字节寻址:每个字节(8个位)占一个地址 ◆按位寻址:有的存储器每一个位就有一个地址
2 数据存储器——RAM(Random Access Memory) 程序存储器——ROM(Read Only Memory) 闪速存储器——Flash Memory EPROM——(UV)Erazible Programmable ROM EEPROM/E2PROM——Electrical Erasable Programmable ROM 静态存储器 SRAM——Static RAM (动态存储器 DRAM——Dynamic RAM) 按字节寻址:每个字节(8个位)占一个地址 按位寻址:有的存储器每一个位就有一个地址 单片机的存储器——几个有关的概念:
8051的存储器组织 8051存储器可以分成两大类: RAM,CPU在运行时能随时进行数据的写入和 读出,但在关闭电源时,其所存储的信息将丢失。 它用来存放暂时性的输入输出数据、运算的中间 结果或用作堆栈。 *ROM是一种写入信息后不易改写的存储器。断 电后,ROM中的信息保留不变。用来存放固定的 程序或数据,如系统监控程序、常数表格等
3 8051的存储器组织 8051存储器可以分成两大类: ﹡ RAM,CPU在运行时能随时进行数据的写入和 读出,但在关闭电源时,其所存储的信息将丢失。 它用来存放暂时性的输入输出数据、运算的中间 结果或用作堆栈。 ﹡ ROM是一种写入信息后不易改写的存储器。断 电后,ROM中的信息保留不变。用来存放固定的 程序或数据,如系统监控程序、常数表格等
2.1.1普林斯顿结构 般微机通常只有一个逻辑空间,可以随 意安排R0M或RAM。访问存储器时,同一地址对 应唯一的存储单元,可以是R0M也可以是RAM4 并用同类访问指令。这种结构称为普林斯顿结 构
4 2.1.1普林斯顿结构 一般微机通常只有一个逻辑空间,可以随 意安排ROM或RAM。访问存储器时,同一地址对 应唯一的存储单元,可以是ROM也可以是 RAM, 并用同类访问指令。这种结构称为普林斯顿结 构
21.2哈佛结构 8051单片机与一般微机的存储器配置方 式很不相同。 5单片机的存储器在物理结构上分为程 序存储空间和数据存储空间,共有四个 片内和片外程序存储空间以及片内和片外 数据存储空间,这种在物理结构上把程序 存储器和数据存储器分开的结构形式称为 哈佛结构
5 2.1.2 哈佛结构 ◆ 8051单片机与一般微机的存储器配置方 式很不相同。 ◆ 51单片机的存储器在物理结构上分为程 序存储空间和数据存储空间,共有四个: 片内和片外程序存储空间以及片内和片外 数据存储空间,这种在物理结构上把程序 存储器和数据存储器分开的结构形式称为 哈佛结构
FFFFH FFFFH FFFFH 程序 存储 器 程序 数据 XXXXH 存褚 存褚 器 器 数据 存褚 器 000OH OOOOH OOOOH 普林斯顿结构 哈佛结构
6
89C51单片机存储器配置 片内RAM128字节(00H-7FH 片内RAM前32个单元是工作寄存器区(00H-1FH) 片内RAM有128个可按位寻址的位,占16个单元。 位地址编号为:00H7FH,分布在20H2FH单 片内21个特殊功能寄存器(SFR)中:地址号能被 8整除的SFR中的各位也可按位寻址(P33-34) 可寻址片外RAM64K字节(0000 H-FFFFH) 可寻址片外ROM64K字节(0000H- FFFFH ●片内 Flash rom4K字节(000HFFH)
7 89C51单片机存储器配置 ⚫ 片内RAM 128字节(00H—7FH); 片内RAM前32个单元是工作寄存器区(00H—1FH) 片内RAM有128个可按位寻址的位,占16个单元。 位地址编号为:00H—7FH,分布在20H—2FH单 元 ⚫ 片内21个特殊功能寄存器(SFR)中:地址号能被 8整除的 SFR中的各位也可按位寻址(P.33-34) ⚫ 可寻址片外RAM 64K字节 (0000H—FFFFH) ⚫ 可寻址片外ROM 64K字节 (0000H—FFFFH) ⚫ 片内 Flash ROM 4K字节 (000H—FFFH)
★8051在逻辑上,即从用户角度上8051有三 个存储空间: 片内外统一编址的程序存储器 片内外不统一编址的数据存储器 特殊功能寄存器(片内) ★访问这几个不同的逻辑空间时,采用的指令: 片内外程序存储器空间一—M0VG 片内数据存储器空间和SFRM0V 片外数据存储器地址空间-M0VX
8 ★ 8051在逻辑上,即从用户角度上8051有三 个存储空间: 片内外统一编址的程序存储器 片内外不统一编址的数据存储器 特殊功能寄存器(片内) ★访问这几个不同的逻辑空间时,采用的指令: 片内外程序存储器空间----MOVC 片内数据存储器空间和SFR----MOV 片外数据存储器地址空间----MOVX
52对应的RAM有384Byte,其中多出的128Byte 只能进行间接寻址用@ 和而c51是通过对自定义的数据类型来区分访问的 存储空间的: 片内外程序存储器空间-code 片内数据存储器空间和 SFR---data 片外数据存储器地址空间 xdata 片内间接寻址区间-data
9 ¶52对应的RAM有384Byte,其中多出的128Byte 只能进行间接寻址用 @ ¶而C51是通过对自定义的数据类型来区分访问的 存储空间的: 片内外程序存储器空间----code 片内数据存储器空间和SFR----data 片外数据存储器地址空间----xdata 片内间接寻址区间-------idata
存储器配置(片内RAM) 片内RAM128字节(00H7FH) FFH FFH SFR分布在 52子系列才有 80H-FFH 的RAM区 其中92个位 可位寻址 80H 10 7FH 89c51 普通RAM区所有的RAM区包括位 128字节)2位寻址区寻址区、工作寄存器 工作寄存器区 区)都可以用于存放 数据,故也称为数据 缓存寄存器
10 存储器配置(片内RAM) ⚫ 片内RAM 128字节(00H—7FH) 00H 20H 2FH 7FH 1FH 30H 80H FFH 52子系列才有 的RAM区 普通RAM区 位寻址区 工作寄存器区 SFR分布在 80H-FFH 其中92个位 可位寻址 80H FFH 所有的RAM区(包括位 寻址区、工作寄存器 区)都可以用于存放 数据,故也称为数据 缓存寄存器 89C51 128字节