- 3
- 0
- 约4.07万字
- 约 6页
- 2016-10-11 发布于贵州
- 举报
Javac编译与IT编译
【深入Java虚拟机】:Javac编译与JIT编译编译过程
? ? 不论是物理机还是虚拟机,大部分的程序代码从开始编译到最终转化成物理机的目标代码或虚拟机能执行的指令集之前,都会按照如下图所示的各个步骤进行:
? ??
? ? 其中绿色的模块可以选择性实现。很容易看出,上图中间的那条分支是解释执行的过程(即一条字节码一条字节码地解释执行,如JavaScript),而下面的那条分支就是传统编译原理中从源代码到目标机器代码的生成过程。
? ? 如今,基于物理机、虚拟机等的语言,大多都遵循这种基于现代经典编译原理的思路,在执行前先对程序源码进行词法解析和语法解析处理,把源码转化为抽象语法树。对于一门具体语言的实现来说,词法和语法分析乃至后面的优化器和目标代码生成器都可以选择独立于执行引擎,形成一个完整意义的编译器去实现,这类代表是C/C++语言。也可以把抽象语法树或指令流之前的步骤实现一个半独立的编译器,这类代表是Java语言。又或者可以把这些步骤和执行引擎全部集中在一起实现,如大多数的JavaScript执行器。
Javac编译
? ?在Java中提到“编译”,自然很容易想到Javac编译器将*.java文件编译成为*.class文件的过程,这里的Javac编译器称为前端编译器,其他的前端编译器还有诸如Eclipse?JDT中的增量式编译器ECJ等。相对应的还有后端编译器,它在
您可能关注的文档
最近下载
- 2025年新《城市轨道交通概论》考试题库及答案.docx VIP
- [运维]-办公设备维护方案.docx VIP
- 小儿疾病推拿技术规范.pptx VIP
- 地籍测绘成果检查验收细则.docx VIP
- 2026年广中医研究生复试题库附答案.docx VIP
- 10J121 外墙外保温建筑构造.docx VIP
- 经常性思想工作实施细则.pdf VIP
- 计算机体系结构课后习题原版答案_张晨曦著.doc VIP
- 开学第一课:一颗荔枝里的中国地理密码 高中地理人教版必修一.pptx VIP
- Unit4 第4课时(大单元教学课件) Sound timeCheckout timeTicking time 五年级英语下册译林三起.pptx VIP
原创力文档

文档评论(0)