搜索
bottom↓
回复: 9

发现个奇怪问题MDK 编译的 STM32,代码更改编译后,代码量....

[复制链接]

出0入0汤圆

发表于 2017-11-6 10:39:59 | 显示全部楼层 |阅读模式
如题:用的编译器是MDK 4.23,芯片是STM32F103VET6 ,falsh 是512K的,我更改了代码,比如增加减少代码,编译后,
Program Size: Code=131072 RO-data=261760 RW-data=1024 ZI-data=49704  
CODE + RO-data 始终等于392832 字节,RW-data 始终等于 1024 ,
是不是编译器有限制?按理说应该不是每次都等于392832,至少应该多一点或者少一点代码。
请大能帮忙看一下.

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

 楼主| 发表于 2017-11-6 10:47:02 | 显示全部楼层
请大牛们解答一下!

出0入57汤圆

发表于 2017-11-6 10:58:48 | 显示全部楼层
你程序在地址靠后的位置有一个绝对地址的定义。

出0入0汤圆

 楼主| 发表于 2017-11-6 11:54:20 | 显示全部楼层
leafstamen 发表于 2017-11-6 10:58
你程序在地址靠后的位置有一个绝对地址的定义。

谢谢你的回复,
请问 是我图片下面的这种情况吗?
但是计算绝对地址和图片上的绝对地址有点对应不上哇

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2017-11-6 12:01:03 | 显示全部楼层
MDK,默认是不管代码使用不使用都编译到bin里面的,有一个选项加了后,没有调用的代码都不会编译进去。

另外如果你删除的代码太少,在bin大小里面也不一定能体现不出来,输出的bin有可能按一定的整数对齐的

出0入0汤圆

 楼主| 发表于 2017-11-6 12:25:15 | 显示全部楼层
javenreal 发表于 2017-11-6 12:01
MDK,默认是不管代码使用不使用都编译到bin里面的,有一个选项加了后,没有调用的代码都不会编译进去。

另 ...

删了一些函数,code 变化超过10KB,但是还是同样的情况,这是编译后的结果Program Size: Code=119596 RO-data=273236 RW-data=1024 ZI-data=50216  

出0入0汤圆

发表于 2017-11-6 14:33:44 | 显示全部楼层
本帖最后由 styleno1 于 2017-11-6 14:38 编辑

RW-data是RAM,可能是栈分配使用了。

出0入0汤圆

发表于 2017-11-6 14:41:50 | 显示全部楼层
我就不信写个“hello world!”也是占用这么多空间,

出0入0汤圆

发表于 2017-11-6 15:21:50 | 显示全部楼层
javenreal 发表于 2017-11-6 12:01
MDK,默认是不管代码使用不使用都编译到bin里面的,有一个选项加了后,没有调用的代码都不会编译进去。

另 ...

1、加的函数调用了吗?
2、加的函数有意义吗,会被优化掉吗?

出0入0汤圆

 楼主| 发表于 2017-11-7 08:05:11 | 显示全部楼层
shiva_shiva 发表于 2017-11-6 15:21
1、加的函数调用了吗?
2、加的函数有意义吗,会被优化掉吗?

确定调用了,这个函数是其中一个重要函数,我没有删掉函数,只是在程序中调用函数的部分 双斜杠注释掉,编译后自动将这个函数优化了。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-6-3 20:36

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表