编译过程

作者: 介和 | 来源:发表于2019-03-12 17:24 被阅读0次

编译过程

参考:

https://objccn.io/issue-6-1/

https://objccn.io/issue-6-3/

https://objccn.io/issue-6-2/

https://www.jianshu.com/p/65901441903e

http://blog.chinaunix.net/uid-31439230-id-5763397.html

https://blog.csdn.net/Future_One/article/details/81882359

1 预处理

符号化 (Tokenization)

宏定义的展开

#include 的展开

2 语法和语义分析

将符号化后的内容转化为一棵解析树 (parse tree)

解析树做语义分析

输出一棵抽象语法树(Abstract Syntax Tree* (AST))

3生成代码和优化

将 AST 转换为更低级的中间码 (LLVM IR)

对生成的中间码做优化

生成特定目标代码

输出汇编代码

4 汇编器

将汇编代码转换为目标对象文件。

5 链接器

将多个目标对象文件合并为一个可执行文件 (或者一个动态库)

相关文章

  • 浅谈编译过程

    浅谈编译过程浅谈编译过程

  • 编译过程

    前言 计算机应用都依赖于计算机程序;除此之外,计算机应用还需要基础硬件去执行计算机程序,而基础硬件又是不能识别我们...

  • 编译过程

    1、预编译(1)宏定义指令,如 #define a b(2)条件编译指令,如#ifdef,#ifndef,#el...

  • 编译过程

    https://blog.csdn.net/haibosdu/article/details/77094833

  • 编译过程

    C源代码 编译---->形成目标代码,目标代码是在目标机器上运行的代码。 连接---->将目标代码与C函数库相连接...

  • 编译过程

    编译过程 参考: https://objccn.io/issue-6-1/ https://objccn.io/i...

  • 编译原理 -- 编译以及编译过程

    前言 为了了解编译器是什么? 为什么需要编译器? 编译器、高级语言、源代码、机器语言 编译器:首先也是一种电脑程序...

  • 编译链接过程

    编译链接过程 一个完整的编译链接过程包含了以下步骤: 预编译 编译 汇编 链接 预编译 预编译的处理规则如下 删除...

  • Android源码编译--编译过程

    6.0源码下载 下载方式有很多,出的去可以直接去Google Source下载,或者别人共享资源(有些会出现解压报...

  • Gradle编译-APK编译过程

    1.再谈Dalvik 在早期的Android设备中(Android5.0以下)都是使用的Dalvik虚拟机,Dal...

网友评论

    本文标题:编译过程

    本文链接:https://www.haomeiwen.com/subject/cninpqtx.html