最近重温了一下《现代编译原理》这本书,感觉与大学学习的时候,完全不是一个味道;深刻的懂得理论联系实际的感受,瞬间有一种“初极狭,才通人。复行数十步,豁然开朗”的惬意感!
编译器将汇编或高级计算机语言源程序(Source program)作为输入(注:目前本人接触到的大多是C/C++编译器/汇编语言编译器),翻译成目标语言(Target language)机器代码的等价程序。源代码一般为高级语言 (High-level language), 如Pascal、C、C++等或汇编语言,而目标则是机器语言的目标代码(Object code),有时也称作机器代码(Machine code)。
一个现代编译器的主要工作流程:源代码 (source code) →预处理器 (preprocessor) →编译器 (compiler) →目标代码 (object code) →链接器 (Linker) → 可执行程序 (executables)。
具体感受就不多说,但突然明白了以前想不通的Question,真的是一种莫名的享受!还有《深度探索c++对象模型》这本书也挺带劲的,虽然有些地方还不太Understand,但我会一如既往的“攻城”!