问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何将单片机C语言程序改小

发布网友 发布时间:2022-05-07 16:52

我来回答

2个回答

热心网友 时间:2022-06-30 18:53

如果超出太多就另想办法,例如更换单片机。
如果超出得不多,可以进行优化。这里又分为两种情况:如果你编程经验丰富,可以手动通过优化减小程序代码大小;如果你不太懂得如何手动优化,可尝试提高编译优化等级并优先针对代码大小进行优化,不过提高优化等级往往会带来更多的隐患,不建议这么做。

“对于程序中重复出现的指令,用子程序调用的方式是否能将程序大小改小?”你指的是重复代码段吧,某些优化等级下编译器已经自动进行了这种优化,这时再手动合并重复代码段有时反而会导致代码大小增大……需要具体试验进行。记得多备份。

“是不是说 程序的代码行数越少,这个程序的所占的空间大小会越小?”完全不是这么回事,某些时候一行C程序可能会编译出很长的汇编代码,尤其是那些卖弄C语言技巧的家伙们。我之前看过一个例子是某个家伙写的一行高度紧凑的语句编译出了数百字节。当然如果不幸调用了库函数会使得代码大小迅速膨胀。

热心网友 时间:2022-06-30 18:53

这单片机程序的结构很重要,同样的功能,用不同的语句写,确定,编译后的代码文件HEX相差会很大的。但是,程序简化,也不是一句话两句话就能说明白的,有很多因素,与个人的写程序的习惯也有关系。对于重复的语句,最好写成子函数,或循环程序。尽量不要用CASE语句,变量尽量不要用16位的,除非需要除外。尽量减少变量数。
但是,这些,对于实学者来说,确实有点难做到,只要能写出程序来就已经不错了,再简化就不容易了。
另外一个原因,就是现在的单片机的FLASH程序存储器的容量都非常大,像你说的:超过单片机的程序空间了,这种情况几乎不会出现的。
用STC单片机,最大容量可达60KB,你的程序再长,也不可能超过的,就算故意让你超,你也没有办法超的,你能写出多大程序来?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
蒲公英根能过夜喝吗 ...会突然醒来,很难受,全身不能动,连嘴巴也张不开,眼睛... 适合N刷的原耽作品有哪些? bl原耽超好看的推荐记录本值得n刷 铝窗有哪些牌子好 在枣树,山楂树上吃树叶的那种虫子叫什么名字? 光纤面板特点 光纤桌面盒简介 哪些品牌的水光针物美价廉? ...被人领到了聊城铁路医院门诊说有专家坐诊,是被骗了吗? 51单片机程序修改 足球在禁区内什么情况下,不算越位? 修改一个简单的单片机程序 足球中越位是怎么回事 单片机C语言程序的修改 足球为什么不取消越位 输入到单片机的程序可不可以修改? 足球为什么不让越位 在足球赛中"越位"是什么意思?为什么越位踢球就不算呢? 单片机修改程序,使第一次LED亮第二次闪烁第三次按下LED闪更快第四次按下LED灭? 足球比赛时的越位是怎么回事 怎样修改这个单片机程序 在足球比赛的过程中,为什么站在“越位”位置不一定判“越位”? 单片机 ,一个单片机的程序能改吗. 网上的单片机和我手中的单片机型号不一样,那程序怎么改 单片机运行时程序能修改自身代码吗? 如何修改单片机的源程序 如何修改单片机的程序 把软件安装包上传到自己的网站 华渠第五如何发安装包 男生夏季如何穿搭能做到时尚和清凉同在? 锦户亮大片袭来,自然顽皮大男孩气质十足!男生夏季穿搭有什么技巧? 周期性明显的行业为什么股票风险高?跪求各位大神解答啊,膜拜ING! 重庆九宫格火锅真的是用的锅与众不同吗? 在翻滚吧!蛋炒饭中里汪大东他是怎么做的蛋炒饭 请问,麻辣豆腐怎么做 三生派锅怎么样 什么是工资 政治经济学 马克思主义政治经济学原理中\"工资\"的定义? 工资条名词解释 名词解释职工薪酬 工资分析 名词解释 坚强勇气仁慈善良英文 2015电影灰姑娘妈妈的话,坚强而勇敢 仁慈而善良 ,就能战胜一切,电影中英文原句 坚强而勇敢,仁慈而善良。 电影原句翻译是什么 代表坚强勇敢仁慈善良的英文名字? 电影灰姑娘勇敢坚强仁慈善良的翻译 善良用英语怎么说? 坚强而勇敢,仁慈而善良是什么意思 坚强而勇敢 仁慈而善良出自哪里