码迷,mamicode.com
首页 > 其他好文 > 详细

GCC编译之后的代码信息

时间:2020-04-17 14:05:37      阅读:82      评论:0      收藏:0      [点我收藏+]

标签:变量   ima   startup   写入   存在   rtu   code   占用   位置   

arm-none-eabi-gcc编译之后会显示一些信息,比如
技术图片

下面就来说受每个字段的含义以及它们与bin文件大小的关系。
text区是代码区,就是程序编译之后源码的区域,在烧录之后一直位于Flash ROM中。


data和bss都是指的全局变量以及函数内static的变量,区别是data是有初始值的而bss没有。
data的初始值同样存在Rom里,当单片机启动的时候data的初始值会被加载到内存的相应位置,而bss则在启动的时候被置零。(这部分可以参考startup_stm32.s)


dec是text+data+bss的大小,hex就是dec转成16进制的值,并不是ROM占用哦,实际的比这个少。


所以最后bin文件的大小是text+data区域的大小,去看看STM32_PD.bin的大小,发现正好是9.32 KB (9,548 bytes),这些东西是要被写入单片机的ROM的。

GCC编译之后的代码信息

标签:变量   ima   startup   写入   存在   rtu   code   占用   位置   

原文地址:https://www.cnblogs.com/ArcherWuAIot/p/12719495.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!