【编译原理】关于解释器和编译器的讨论

1 编译器和解释器的区别

在这里插入图片描述
他们最大的区别是程序运行时需要解释器边解释边执行,而编译器则在运行时是完全不需要的

解释器的优点是比较容易让用户实现自己跨平台的代码,比如java,php等,同一套代码可以在几乎所有的操作系统上执行,而无需根据操作系统做修改
边解释边执行
编译器的目的就是生成目标代码再由连接器生成可执行的机器码,这样的话需要根据不同的操作系统编制代码,虽然有像Qt这样的源代码级跨平台的编程工具库,但在不同的平台上仍然需要重新编译连接成可执行文件,但其执行效率要远远高于解释运行的程序。
生成exe 效率比解释运行高。
翻译成目标语言
java中 javac 和 Java解释器 是因为又JVM存在

2 编译器过程划分

在这里插入图片描述
在这里插入图片描述
前后端分离方便开发编译器

3 遍的概念

在这里插入图片描述在这里插入图片描述

发布了877 篇原创文章 · 获赞 237 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/weixin_43838785/article/details/104916290