《编译与反编译技术》—第1章1.2节编译过程

简介: 本节书摘来自华章出版社《编译与反编译技术》一书中的第1章,第X节,作者庞建民,陶红伟,刘晓楠,岳峰,更多章节内容可以访问云栖社区“华章计算机”公众号查看。 1.2 编译过程 考虑一种场景,让一个既懂英文又懂中文的俄罗斯人将一篇英文文章翻译成中文,此人可能要经历这样几个阶段:识别英文单词、识别英文句子、理解意思、先译成俄语并进行合理修饰、译成中文。
本节书摘来自华章出版社《编译与反编译技术》一书中的第1章,第X节,作者庞建民,陶红伟,刘晓楠,岳峰,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.2 编译过程

考虑一种场景,让一个既懂英文又懂中文的俄罗斯人将一篇英文文章翻译成中文,此人可能要经历这样几个阶段:识别英文单词、识别英文句子、理解意思、先译成俄语并进行合理修饰、译成中文。编译器对高级语言的翻译也需要经历这样几个类似阶段:先进行词法分析,识别出合法的单词;再进行语法分析,得到由单词串组成的句子;然后进行语义分析,生成中间代码;再进行中间代码级别的优化,生成优化的中间代码;最后再翻译成目标代码。可见这两种情况的各个阶段的对应非常一致。

相关文章
|
程序员 Linux Android开发
libYuv编译
安卓使用NDK编译libYuv库
470 0
|
自然语言处理
编译
编译
118 0
|
Web App开发 存储 缓存
V8 编译浅谈
本文是一个 V8 编译原理知识的介绍文章,旨在让大家感性的了解 JavaScript 在 V8 中的解析过程。
V8 编译浅谈
|
开发工具 C++ git
DCMTK-001-3.6.6编译
DCMTK-001-3.6.6编译
291 0
DCMTK-001-3.6.6编译
|
编译器 开发工具 IDE
编译问题汇总
每次在编译各类第三方库的时候都会碰到很多问题,基本上都是通过Google解决,其实简单反思一下就会发现是对于系统了解的不够,对于各类标准也是了解甚少。所以一而再再而三发生的问题其实是可以尽量去避免的。
1969 0
|
Linux 开发工具 Android开发
libyuv编译【转】
转自:http://blog.csdn.net/kl222/article/details/41309541 版权声明:本文为博主原创文章,未经博主允许不得转载。 下载代码(要FQ): git clone http://git.
1452 0