2024 年 11 月 11 日 · 1 分钟 编译原理-优化 编译原理 优化章 Dan Attention · 1 分钟 跳过动画 优化 任务 对前面产生的中间代码进行加工变换,以期在最后阶段能产生更为高效的目标代码。 原则:等价变换 主要关注:公共子表达式的提取、合并已知量、删除无用语句、循环优化等。 循环优化:将循环内的语句优化为必需语句 优化举例 上图左边是C语句,右边为for循环的拆解,根据右边语句生成中间代码 中间代码如上,优化结果如下 优化结果中可以看到,乘法消失了 如果循环中只有示例中的代码的话,可以使用加法一次性计算代替循环计算(+1到100变为+5050,依旧等价) 复制 分享 点赞 — 点踩 — 写评论 引用选段 表情 😀 😂 😊 🥰 🤔 😮 😢 😎 👍 ❤️ 🎉 🙏 添加附件 公开 仅评论者 仅博主 公开 仅评论者 仅博主 公开 页面展示范围说明 公开:所有页面访客都能看到。 仅评论者:只有这条评论的作者登录后能看到。 仅博主:只有站点配置的博主登录后能看到。 这些选项只控制本博客页面如何展示,由评论服务执行和裁定。所有评论仍公开保存在 GitHub Issues 上。 0 / 5000 发送 正在上传附件… {percent}% 0% 确认公开发布 评论会公开保存到 GitHub Issues,任何人都可能在 GitHub 或通过 API 查看。这里的选项仅控制本博客页面如何展示,不提供隐私保护。 所选页面展示范围 公开 取消 继续发布