单片机内部的三大存储器介绍
存储器 属于常见产品,在各类需要存储功能的器件中均存在存储器身影。本文中,小编将对 单片机 内部的各大存储器:程序存储器、数据存储器、特殊功能寄存器 予以介绍。
一、程序存储器
程序是控制 计算机 动作的一系列命令,单片机只认识由“0”和“1”代码构成的机器指令。如前述用助记符编写的命令MOVA,#20H,换成机器认识的代码74H、20H:(写成二进制就是01110100B和00100000B)。在单片机处理问题之前必须事先将编好的程序、表格、常数汇编成机器代码后存入单片机的存储器中,该存储器称为程序存储器。程序存储器可以放在片内或片外,亦可片内片外同时设置。由于PC程序计数器为16位,使得程序存储器可用16位二进制地址,因此,内外存储器的地址最大可从0000H到FFFFH。
8051内部有4k字节的 ROM ,就占用了由0000H~0FFFH的最低4k个字节,这时片外扩充的程序存储器地址编号应由1000H开始,如果将8051当作8031使用,不想利用片内4kROM,全用片外存储器,则地址编号仍可由0000H开始。不过,这时应使8051的第{31}脚(即EA脚)保持低电平。当EA为高电平时,用户在0000H至0FFFH范围内使用内部ROM,大于0FFFH后,单片机 CPU 自动访问外部程序存储器。
二、数据存储器
单片机的数据存储器由读写存储器 RAM 组成。其最大容量可扩展到64k,用于存储实时输入的数据。8051内部有256个单元的内部数据存储器,其中00H~7FH为内部随机存储器RAM,80H~FFH为专用寄存器区。实际使用时应首先充分利用内部存储器,从使用角度讲,搞清内部数据存储器的结构和地址分配是十分重要的。因为将来在学习指令系统和程序设计时会经常用到它们。
8051内部数据存储器地址由00H至FFH共有256个字节的地址空间,该空间被分为两部分,其中内部数据RAM的地址为00H~7FH(即0~127)。而用做特殊功能寄存器的地址为80H~FFH。在此256个字节中,还开辟有一个所谓“位地址”区,该区域内不但可按字节寻址,还可按“位(bit)”寻址。对于那些需要进行位操作的数据,可以存放到这个区域。从00H到1FH安排了四组工作寄存器,每组占用8个RAM字节,记为R0~R7。究竟选用那一组寄存器,由前述标志寄存器中的 RS 1和RS0来选用。在这两位上放入不同的二进制数,即可选用不同的寄存器组。
三、特殊功能寄存器
特殊功能寄存器(SFR)的地址范围为80H~FFH。在MCS-51中,除程序计数器PC和四个工作寄存器区外,其余21个特殊功能寄存器都在这SFR块中。其中5个是双字节寄存器,它们共占用了26个字节。各特殊功能寄存器的符号和地址见附表2。其中带*号的可位寻址。特殊功能寄存器反映了8051的状态,实际上是8051的状态字及控制字寄存器。用于CPUPSW便是典型一例。这些特殊功能寄存器大体上分为两类,一类与芯片的引脚有关,另一类作片内功能的控制用。
单片机中的数据存储器ram
存储器是由许多的存储单元集合所成,按照单元号顺序进行排列。每个单元由若干三进制位构成,以表示存储单元中所存放的数值,这种结构和数组的结构非常相似,故在VHDL语言中,通常是由数组描述存储器。存储器是用来存储程序和各种数据信息的记忆部件。
数据存储器ram 这是个可以随时存取数据的一块存储器,也就是可以读(取)也可以写(存)的存储器,简称为RAM存储。 现在单片机里面所使用的RAM存储器,属于静态RAM或SRAM存储芯片,这个和电脑用的内存条有所不同。只要你把数据写入SRAM后,不断电或者不清除掉,这个数据就一直保存在那里。电脑用的是动态RAM,需要不断地给它加刷新脉冲才能保存数据。 因为MCU处理的信息量比电脑小很多,所以它带的RAM也比较少:从完全不带、带128、256、...1K、2K,再到4K,比ROM少多了。 因为实际上RAM只是作为数据临时存放的地方,除非进行图像处理需要存放大量的数据外。一般对于执行较简单任务的MCU单片机,有这么多也够用,如果实在不够用也只能采取外加SRAM如6116、6264等等来扩展。 为了对RAM存储单元存取8位二进制数,当然也得和ROM一样用“地址”来标示它的具体位置。假如某单片机有1K(1024)RAM,它的地址也是从0000到1024,或16进制数的0000H到03FFH。可见和ROM的地址是一样的。
相关问答
单片机存储器 的划分方法?单片机的存储器可分为程序存储器(ROM)和数据存储器(RAM)。程序存储器是专门用来存放程序和常数的。数据存储器是程序在运行中存放临时数据的,掉电后数据即...
8051 单片机 的 存储器 分为?8051单机片的存储器分为:(1)64KB的程序存储器地址空间:0000H~FFFFH,其中0000H~0FFFH为片内4KB的ROM地址空间,1000H~FFFFH为外部ROM地址空间;(2)2...
关于 单片机存储器 的问题,idata,data,badata,xdata,pdata,cod...关于51单片机内存问题,一直是个疑惑大家的问题,因为51单片机是个很另类的单片机。下面我给楼主讲解一下:51单片机之所以另类,是因为,他寻址内存的空间,不是靠...
单片机数据存储器 分为哪几个性质?数据存储器主要用来执行的中间结果与过程数据,相当电脑的内存作用,一个很相关的就是变量的类与量,简单的说其一就是决定你能够定义多少多长的变量。印象中是有...
513 单片机 内部程序 存储器 功能?1513单片机的内部程序存储器具有存储程序代码的功能。2内部程序存储器是用来存储单片机的程序代码,包括指令和数据。它可以存储程序的指令序列,以便单片机按...
单片机存储器 最多可以分成哪几种?单片机的存储器可分为程序存储器(ROM)和数据存储器(RAM)。程序存储器是专门用来存放程序和常数的。数据存储器是程序在运行中存放临时数据的,掉电后数据即...
单片机存储器 分哪几个空间,如何区别不同空间的寻址?1.单片机存储器分为程序存储器(ROM)和数据存储器(RAM)两个空间。2.程序存储器(ROM)用于存储程序代码和常量数据,它的内容在程序运行过程中不会被修改。...1...
什么是 单片机 闪存?单片机闪存指的是内部存储器,当单片机内存不够的话,一般会选用内存更大的型号或者直接使用外部存储器来扩充存储空间单片机的内存就是集成在单片机芯片内的存...
51 单片机 外扩 数据存储器 最大的容量是多少,可以达到50MB吗?用的是什么芯片?如果正常外扩外部数据存储器,最大只有64K如果用8088的那种映射办法,那51单片机可以达到无穷大例如用8000H-FFFFH这个32K来分片切换,可以把其他芯片...
8051 单片机 如何访问 数据存储器 ?8051单机片将EA引脚接地,则运行片外程序存储器;EA接VCC,则运行片内程序存储器。当然,即使EA接VCC,如果程序运行时指令地址超过了片内程序存储器地址范围,也...