7839|14

82

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

请教C语言如何节省空间? [复制链接]

                                 请问高手们,用C语言编写程序,如果才给更节省的用有限的程序空间。用C 编写,容量只有8K的ROM,却发现空间不够,高手们能否传授一点点用C编写省空间的经验。
此帖出自stm32/stm8论坛

最新回复

                                 谢谢!各位的指点。换成16K不是没有考虑过,只是刚好16K的IO不太够啦,现在自己骑虎难下,当时开发时预算不够哈!  详情 回复 发表于 2010-12-16 11:59
点赞 关注
 

回复
举报

78

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
                                 指针,数组
此帖出自stm32/stm8论坛
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
小8K的芯片,至于这么取舍吗?用汇编!

着急上市,就换16K的,直接用C先发一批,不着急上市,就慢慢磨呗
此帖出自stm32/stm8论坛
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

4
 
                                 少用库函数,自己写。。。其他不清楚。
此帖出自stm32/stm8论坛
 
 
 

回复

61

帖子

0

TA的资源

一粒金砂(初级)

5
 
                                 换几种写法和算法对比一下结果,C编译器都有自己的特点,需要自己是
此帖出自stm32/stm8论坛
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

6
 
                                 选择优化选项
此帖出自stm32/stm8论坛
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

7
 
优化选项是双刃剑啊

对于粗制的代码,是很危险的
此帖出自stm32/stm8论坛
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

8
 
                                 差一点的话改改算法,差一截的话换成FLASH大点的单片机!
此帖出自stm32/stm8论坛
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

9
 
                                 换片子,别折磨自己,开发的精力要放在应用上
此帖出自stm32/stm8论坛
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

10
 
                                 问问 优化选项 有什么危险?
此帖出自stm32/stm8论坛
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

11
 
                                 换16K的,这个问题有那么难取舍吗?
此帖出自stm32/stm8论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

12
 
优化代码和算法, 是要建立在对编译器特点和 “嗜好”足够的了解的基础的。
这往往着急不容易做到。
选择空间优化,通常都能够减少代码,通常不会出现大问题, 除非有特别时序要求的驱动软件。
另外不同的处理器,不同的编译器特性都未必相同。
就说指针和数组的效率吧,通常说法指针的效率高于数组,但在 KEIL c51 的 DATA 区的数组却高于指针的效率。
此帖出自stm32/stm8论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

13
 
1.尽量不调用 C的函数库。
2. 不要使用浮点数和算法
3. 能用8位就不要用16位。
4.标志使用位变量来标记。 一位标记一个标志。而非使用整个8位甚至16位的变量来标记一个标志。
5. 尽量把重复的代码独立出来成为独立的函数。供共同调用。尽量减少重复的代码。
6.优化程序的结构与逻辑。 程序条例清晰。减少冗余的代码。
。。。。
此帖出自stm32/stm8论坛
 
 
 

回复

58

帖子

0

TA的资源

一粒金砂(初级)

14
 
                                 在Keil中观察watch,不管是char、int等类型,都是分配一个32位存储器(寄存器或ram),能否说定义临时变量类型时,使用u8、u16并不能节省ram资源,请指点1
此帖出自stm32/stm8论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

15
 
                                 谢谢!各位的指点。换成16K不是没有考虑过,只是刚好16K的IO不太够啦,现在自己骑虎难下,当时开发时预算不够哈!
此帖出自stm32/stm8论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表