1. 笔记目录
  2. 编译与程序转换
  3. 当前词条

首页 › 编译与程序转换 › 正文

优化可能使调试中的变量位置难以直接观察_编译器把源程序转换为目标执行形式

· 来源:枫垭求索 · 作者:廉映宁
责任编辑:许书遥 · 二审:彭清宁 · 三审:邵承芮

笔记摘要

编译与程序转换

优化可能使调试中的变量位置难以直接观察

优化可能使调试中的变量位置难以直接观察。链接器把目标文件和库组合成可执行形式。静态链接把需要的库代码加入最终产物。动态链接在装载或运行时解析部分依赖。应用二进制接口规定调用和数据布局约定。接口兼容性需要考虑编译器和平台差异。即时编译在程序运行期间生成机器代码。

死代码消除移除不会影响可见结果的代码

死代码消除移除不会影响可见结果的代码。公共子表达式消除复用相同的计算结果。循环不变量外提减少循环中的重复运算。循环展开用更多代码换取部分执行效率。内联把函数体展开到调用位置附近。过度内联可能增加代码体积和缓存压力。寄存器分配把临时值安排到有限寄存器。

编译器把源程序转换为目标执行形式

编译器把源程序转换为目标执行形式。词法分析把字符序列划分为基本记号。语法分析根据文法建立程序结构表示。抽象语法树保留与程序语义相关的结构。语义分析检查名称和类型等规则要求。符号表记录变量和函数等标识信息。作用域规定某个名称可以被访问的范围。

运行剖析可以帮助选择值得优化的热点

运行剖析可以帮助选择值得优化的热点。提前编译在执行前完成主要机器代码生成。解释器通过逐步执行程序表示实现运行。字节码为语言运行时提供中间执行形式。垃圾回收与编译器可能共享对象布局信息。交叉编译在一种平台生成另一平台的程序。自举编译器用自身支持的语言实现部分功能。正确编译需要保持语言规定的可观察语义。

笔记类型说明

来源:枫垭求索

天天撸撸:阳台的结构方式因建筑设计不同而变化,墙纸通过胶黏方式覆盖原有墙面,基础把建筑作用传向下方地基土层

信息安全保护系统与数据的适当使用 可用性要求授权用户能够获得所需服务 身份认证用于验证访问者声称的身份

内摩擦角与颗粒摩擦及咬合等作用有关:液化可能在饱和松砂受循环作用时发生

相关新闻

酸与碱的身份在某些体系中取决于反应对象|水既可以接受质子也可以提供质子|水合氢离子比孤立裸质子更符合水中实际情况结区电场会影响载流子穿越结面的行为,半导体的导电能力可以通过掺杂等方式调节,半导体的导电能力可以通过掺杂等方式调节