关于代码速度优化,MDK中 static 与优化级别与典型for循环之间的关系
来源:互联网 发布:恐怖整蛊软件 编辑:程序博客网 时间:2024/03/30 06:28
刚刚,弄CAN接收,把一个变量弄成static形式
就是将代码
unsig int i = 0;
for (i =0; i <512,i++ ) {
memcpy(,,);
}
改成
static unsig int i = 0;
for (i =0; i <512,i++ ) {
memcpy(,,);
}
分析仪1毫秒发送一次,结果丢了大量的帧。为什么不加static不丢帧?
我的第一反应是我分配内存用mallo是不是出问题了。或者是我变量名弄重复了。
然后发现好像不是这样,观察一下,用了static之后,生成的HEX代码变大了好多。
由于我代码里面的优化级别是0,所以我把代码优化级别弄成3,然后仍然运行上面两个程序作比对。结果效果一样,都是不丢帧。
这样我就弄清楚了。就是static对代码优化程序产生了很大的影响。
这个是第一次见。赶忙记录下来。
还有那个__IO 就是volatile 影响也挺大。对效率有要求的地方要注意了!!
阅读全文
0 0
- 关于代码速度优化,MDK中 static 与优化级别与典型for循环之间的关系
- 嵌入式程序设计中运行速度与代码尺寸优化策略
- J2ME中循环与String的优化
- 最基本的C语言代码级别速度优化
- JS优化For循环的实例代码
- 关于for循环的优化问题
- Java循环与字符串代码优化
- Java循环与字符串代码优化
- for循环的优化
- For 循环的优化
- For 循环的优化
- for循环的优化
- for循环的优化
- for循环的优化
- java中for循环的优化
- 优化MyEclipse 8.6.1的启动速度与运行速度
- mysql隔离级别与sql blocking之间的关系
- 关于do while与wihle循环和for循环之间的出入
- MySQL-----MySQL主-从双机热备
- 最新海康摄像机、NVR、流媒体服务器、回放取流RTSP地址规则说明
- GitHub
- 矩阵分解 SVD分解
- 微信小程序 蓝牙实现
- 关于代码速度优化,MDK中 static 与优化级别与典型for循环之间的关系
- JAVA虚拟机初步学习之类的加载
- Mybatis动态数据源实现
- Python--正则匹配
- 关闭WIN10系统更新
- 目标检测之一(传统算法和深度学习的源码学习)
- 关于堆的操作
- 更新boot后,WLAN无法使用
- DAY4-2017-11-20