现代编译器的结构:
上图中,IR: Intermediate Representations:原书的解释:A compiler uses some set of data structures to represent the code that it processes
源代码转换到目标程序,在编译器中经历上述几个步骤的转换。
Front End: 理解原始代码,讲代码转换成IR,分为Scanner,Parser,Elaboration 3个步骤
Optimizer: 优化IR中的代码,使代码运行时会更有效率
Back End: 将IR转换为机器指令
具体的结构: