美文网首页
单片机的存储空间 - 草稿

单片机的存储空间 - 草稿

作者: jonah_king | 来源:发表于2017-01-26 06:14 被阅读0次

单片机从硬件上来说,只有两种空间:ROM和RAM!

也就是说,你程序里的所有东西,不是放在RAM里,就是放在ROM里。

ROM的属性是read only(只读),只能用来读取,无法修改,其实也可以修改,只是需要特殊方法,这里不谈!

RAM的属性是read+write(读写)

这个区域有可能是间断的,更是分段的。主要有数据段+堆+栈+通用寄存器+特殊功能寄存器等

所以编译器根据只读或者读写的属性将程序划分为

1、ROM区(也就是单片机的FLASH区)

我们都了解,rom是只读的,所以里面的内容也是只读的。

1.1、软件的代码段(code)

1.2、数据常量(const修饰)就是放在这里的。

1.3、数据段,定义的数据,

2、RAM区

ram区域读写的,掉电易失的。

那么问题来了,刚上电复位时,ram区肯定是空的,那么访问全局变量时,数是怎么变得?

如果我们仔细看一下启动代码,就是main至少得东西,我们就能知道了。这里我们首先要明白两个概念。程序的运行视图和加载视图。

请大家想一个例子,你电脑上的应用程序,没有运行的时候,是不是只在硬盘上,点击运行后就跑到了内存里运行起来了。

单片机也是一样,你写完程序,编译成功,生bin或hex或者lmage文件,把他烧录到片子里。

这个时候你程序的应用信息肯定全被包含在了烧录文件里(要不然程序怎么能正常运行),同时这个烧录文件是不可能包含ram区域的数据的(这时候还没有上电),这个状态下的程序叫加载视图,就是烧录程序时,程序看上去的样子!

还有一个叫运行视图,就

2.1、数据段(data)

BSS(未初始化的全局变量+未初始化静态变量)

Data初始化的全局变量+初始化的静态变量

2.2、STATCK(栈)

(1)、函数传递参数较多时;

(2)、中断发生时,用于保存和恢复中断现场。

2.3、HEAP(堆)

Malloc函数申请的空间(需要了解操作系统内核和链表)

2.4、SFR(通用寄存器,R1,R2。。。。。R15等)

(1)传递函数参数(个数较少时)使用

(2)中间变量使用

(3)寻址等等(查看汇编的寻址方式等)

2.5、SFR特殊功能寄存器(AD,UART,PWM等)

(1)设置芯片工作状态,操作外设。

相关文章

  • 单片机的存储空间 - 草稿

    单片机从硬件上来说,只有两种空间:ROM和RAM! 也就是说,你程序里的所有东西,不是放在RAM里,就是放在ROM...

  • 单片机内部资源(内部结构)

    单片机内部资源,三个:flash:程序存储空间,相当于硬盘RAM:(程序运行时的)数据存储空间,相当于内存SFR:...

  • Lession1

    单片机资源(三大资源): 程序存储空间(ROM:Read Only Memory):用来存储用户写的程序代码。 数...

  • 2020-03-10废旧手机改电脑监视器

    图吧垃圾佬疯狂清草稿填坑.DOC 本作其实是前作:教你用单片机自制桌面CPU温度显示器(预算30) 的简便方法 相...

  • 单片机学习开篇

    一、单片机简介 1.1 单片机的定义 单片机(Signal Chip Microcontrollers)是...

  • 1.0 什么是51单片机?

    51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,...

  • 单片机小系统介绍

    什么是单片机小系统? 单片机小系统,或者称为小应用系统,是指用少的元件组成的单片机可以工作的系统。 单片机小系统的...

  • Mac下单片机开发环境的搭建

    先来简单介绍一下51单片机: 51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖...

  • 单片机串行口通信原理

    单片机通信是指单片机与单片机之间、单片机与计算机之间的通信。 通信可以分成两种方式:并行通信方式和串行通信方式。 ...

  • 实验二: 独立按键移植小板实验

    实验器材 1:共阴单片机(大板)和共阳单片机(小板) 2:电脑、keil软件、烧录软件。 一、单片机的使用: 使用...

网友评论

      本文标题:单片机的存储空间 - 草稿

      本文链接:https://www.haomeiwen.com/subject/vxssuttx.html