编译器如何识别其主机的硬件?哪个组件?

时间:2017-07-05 07:01:03

标签: c++ c compiler-construction systems-programming intermediate-code

我的老师告诉我,中间代码对于所有系统都是通用的,但编译器的一个组件会根据运行代码的系统/环境使其不同。有人可以解释一下。

1 个答案:

答案 0 :(得分:7)

通常,编译器分为两部分:执行解析的前端,以及生成中间代码的前端。然后是后端,它接受中间代码并生成程序集或机器代码。

前端可以是通用的,但后端是为特定的目标构建的。所以编译器不必识别"主持人,只知道目标。

请注意,主机和目标可能是不同的系统,用于cross compilation