编译器和解释器区别
根据它们的定义,编译器和解释器之间的区别似乎很明显:
- 解释器可以直接执行以编程语言编写的指令的程序
- 编译以低级语言转换源代码的程序
但是,如果您深入研究,可能会发现两者之间有些模糊 。
实际上,解释器可以以中间形式翻译源语言,以加快执行速度。 依赖虚拟机的语言通常会发生这种情况。 这自然会引起一些问题:
使用虚拟机的所有语言都可以解释吗?
它们都是实际编译的吗?
您可能会说两种 :一种语言首先以一种中间形式/语言进行编译,然后在运行时解释这种中间事物。 这也导致了另一个问题,编译器和解释器不应被视为一个程序,而应被视为系统中更多的程序。 作为用户,您认为编译器实际上可能包含多个程序。 例如,它可能包含一个链接器:一种将不同的目标文件组合到一个文件中的程序,以便可以更轻松地使用它。 口译员可以说类似的话。
您能告诉我有关编译器和解释器的所有信息吗?
那么,构成编译器或解释器的都是哪些部分? 您可以为学术界中的此类问题寻求精确的技术答案。 或者,您可以在