[技术问答] 劝君慎用KEILC51 优化

[复制链接]
 楼主| xiaoyaodz 发表于 2023-3-15 17:00 | 显示全部楼层 |阅读模式
有时程序才4K多一点,或者8K多一点,32K多一点,64K多一点,总会想方设法去优化压缩代
码,以便放到更低成本的芯片中去,可是这时问题可能就出现了!

KEILC51九级优化可以将程序中相同的代码段归为一段,从而大幅度缩减程序代码。
可是这一级优化却是没有保障的,优化后,经常会产生各种错误,特别是常量代码段被搞到
乱七八糟,一些隐形的bug也从此悄悄伏下,如中断错误,待到你发现有问题还模不清头
脑!假如你是在准备生产时才将C51编译提高到9级优化,可能就要完蛋了,因为平时调试的
结果可能和生产产品的结果大不相同!

sszxxm 发表于 2023-3-18 15:33 | 显示全部楼层
我的观念恰恰和你相反,编译中要尽量使用9级size优化,因为这个优化中如果出现程序异常,那就是说,我的程序存在不规范的地方,需要排除。目前所有的产品程序,都是使用了9级size优化,截止到现在,所有程序中的bug都与编译器无关,都是自己的问题。
mikewalpole 发表于 2023-4-4 13:53 | 显示全部楼层
Keil优化及如何设置某段代码不优化
cemaj 发表于 2023-4-4 14:22 | 显示全部楼层
怎么优化 keil c51 代码  
biechedan 发表于 2023-4-4 15:52 | 显示全部楼层
1、针对某个文件 (1) 右键->Option for File XXXX (2) 切换到【C51】选项卡 default表示与工程设置一致 2、针对某段代码(局部优化)pragma OPTIMIZE(x) x就是你希望的优化级别
sheflynn 发表于 2023-4-4 16:12 | 显示全部楼层
“Keil C51”下如何让编译器优先使用片内“RAM”?
pentruman 发表于 2023-4-4 20:38 | 显示全部楼层
怎么优化 keil c51 代码  
lihuami 发表于 2023-4-4 21:06 | 显示全部楼层
如何配置KEILC51优化等级              
ulystronglll 发表于 2023-4-4 21:36 | 显示全部楼层
keil C51语言编程如何缩减编译代码长度
lzbf 发表于 2023-4-6 16:51 | 显示全部楼层
keil C51语言编程如何缩减编译代码长度
updownq 发表于 2023-4-6 17:11 | 显示全部楼层
如何配置KEILC51优化等级              
jtracy3 发表于 2023-4-6 17:21 | 显示全部楼层
怎么让keil MDK 不把把宏定义给优化掉了
modesty3jonah 发表于 2023-4-6 17:47 | 显示全部楼层
keil优化等级对nop的影响会使程序运行缓慢。
lihuami 发表于 2023-4-8 21:22 | 显示全部楼层
keil优化级别对nop的影响会使程序运行缓慢。
pentruman 发表于 2023-4-8 21:56 | 显示全部楼层
程序一点都不用修改,将Keil C51的编译优化选择设置为0(不优化)就可以了。
wengh2016 发表于 2023-4-8 22:03 | 显示全部楼层
KEIL是否有内置的输出编译后程序大小的宏定义
houjiakai 发表于 2023-4-8 22:09 | 显示全部楼层
不同的优化设置,会产生不同的编译结果。
claretttt 发表于 2023-4-8 22:28 | 显示全部楼层
keil c51优化等级介绍 一般用优化等级8,其它的别用,容易出事。
lzmm 发表于 2023-4-9 13:51 | 显示全部楼层
般情况缺省编译优化设置被设定为8级优化
i1mcu 发表于 2023-4-9 14:21 | 显示全部楼层
为什么用Keil C51编译的时候电脑会很卡?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

36

主题

4970

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部