- 21
- 0
- 约小于1千字
- 约 1页
- 2021-11-30 发布于上海
- 举报
Keil C51 中的优化级别及优化作用
级别说明 0 常数合并:编译器预先计算结果,尽可能用常数代替表达式。
包括运行地址计算。优化简单访问:编译器优化访问 8051 系统的内部数据和
位地址。跳转优化:编译器总是扩展跳转到最终目标,多级跳转指令被删除。
1 死代码删除:没用的代码段被删除。拒绝跳转:严密的检查条件跳转,以
确定是否可以倒置测试逻辑来改进或删除。
2 数据覆盖:适合静态覆盖的数据和位段被确定,并内部标识。 BL51 连接/
定位器可以通
过全局数据流分,选择可被覆盖的段。
3 窥孔优化:清除多余的 MOV 指令。这包括不必要的从存储区加载和常数
加载操作。当存
储空间或执行时间可节省时,用简单操作代替复杂操作。
4 寄存器变量:如有可能,自动变量和函数参数分配到寄存器上。为这些变
量保留的存储区就省略了。优化扩展访问: IDATA 、XDATA 、PDATA 和
CODE 的变量直接包含在操作中。在多数时间没
必要使用中间寄存器。局部公共子表达式删除:如
原创力文档

文档评论(0)