- 209
- 0
- 约 3页
- 2017-06-25 发布于河南
- 举报
C51–在main__之前到底做了什么
C51–在main()之前到底做了什么??
用C 写过东西的都知道,程序是从main()函数开始执行的,在main()之前会有一系列的初始化工作,那么这些初始化到底做了些什么了??
大家也都知道在MCU 中,程序是在Flash 里面,而数据是在RAM 里面,掉电之后,Flash 里面的东西还在,RAM 里面的东西就没有了.
那么你把程序下载到芯片里面之后,数据是在哪里了?你会想,它当然是在Flash 里面的.那数据又是在什么时候跑到RAM 里面了呢?
结合C51 生成的M51 文件,大概的说一下main()函数之前,到底都做了哪些初始化的工作.
程序编译(assembly,compile),连接(link)过后会生成HEX 文件.整个HEX 文件是由程序和数据(主要是global 和static 的数据)组成的.当然程序和数据会放在不
同的地址,这些地址是绝对的地址.绝对的地址是在连接(link)过程中生成的.如果是C51 的话,何以看一下他的M51 文件.M51 文件就是link 的MAP 文件.
例如:MCU 是C8051F340,IDE 是uVersion4,C51 是v9.01,main()函数如下:
//main.c
unsigned int a = 0;
unsigned int b = 0xff;
void main(void)
{
uns
您可能关注的文档
- Linux下S3C2440微控制器的CAN驱动设计与实现.pdf
- MAX113CAG+;MAX117CAI+;MAX117EAI+;MAX117CAI+T;MAX117CPI+;中文规格书,Datasheet资料.pdf
- MAX118CAI+;MAX114EAG+;MAX118EPI+;MAX114CAG+T;MAX118CAI+T;中文规格书,Datasheet资料.pdf
- 网络经济学 网络市场结构.ppt
- Meru解决方案简介:通过Wi-Fi安全地传输语音和数据.pdf
- MAX7302AEE+;MAX7302AEE+T;MAX7302ATE+T;MAX7302ATE+;中文规格书,Datasheet资料.pdf
- MYSIPO公益沙龙:美国专利务实与交易—马歇尔法学院袁丹吉.pdf
- NTC热敏电阻做温度采集.pdf
- OpenCv学习心得之程序.pdf
- Tcl库函数.pdf
- 四川省凉山州西昌市达标名校2026届中考英语押题卷含答案.doc
- 江苏省南通市如皋区2026届中考语文全真模拟试题含解析.doc
- 安徽省六安市七校联考2026届中考历史模拟精编试卷含解析.doc
- 2026届新疆莎车县重点名校毕业升学考试模拟卷英语卷含答案.doc
- 甘肃省定西市安定区重点达标名校2026届中考猜题历史试卷含解析 (2).doc
- 重庆市长寿区2026届中考英语模拟预测试卷含答案.doc
- 2026届江苏省扬州市江都区江都实验中学中考历史猜题卷含解析.doc
- 2026届江苏省南京联合体【栖霞、江宁、雨花】重点达标名校中考语文押题卷含解析.doc
- 2026届江苏省扬州市江都区六校联考中考语文考前最后一卷含解析.doc
- 2026届安徽省合肥市庐阳中学中考四模英语试题含答案.doc
原创力文档

文档评论(0)