---
title: 计算机的编译流程
date: 2024-06-06T23:51:42Z
tags: []
---

预处理（Preprocessing）：
任务：预处理阶段对源代码进行预处理，展开宏、处理条件编译等。
工具：预处理器，如 C 语言中的 cpp。

编译（Compilation）：
任务：将预处理后的源代码翻译成汇编语言。
工具：编译器，如 GCC（GNU Compiler Collection）。

汇编（Assembly）：
任务：将汇编语言翻译成机器语言的汇编代码。
工具：汇编器，如 GNU Assembler。

链接（Linking）：
任务：将多个目标文件及其所需的库链接在一起，解决符号引用。
工具：链接器，如 GNU Linker。

加载（Loading）：
任务：将可执行文件加载到内存中，准备执行。
工具：操作系统的加载器。

执行（Execution）：
任务：在内存中执行程序。
工具：计算机硬件。
