语言翻译程序

计算机只能识别、运行本身的机器语言(0、1构成的指令系统),另一方面,人们又希望使用高级的程序设计语言描述要计算机解决的问题,因此,如何使用高级程序设计语言映射成等价的及其语言就成为解决问题的关键,语言翻译程序就起到这样的作用。

语言翻译程序分为两种:解释型翻译程序和编译型翻译程序
解释型:读入一句源程序,翻译一句,执行一句,如BASIC语言
编译型:也叫编译程序,它是加工整个源程序,最终翻译成机器语言代码,然后交给计算机执行,编译程序有利于目标程序的优化,也有利于提高目标程序的运行速度。如FORTRAN语言,C语言,PASCAL语言

语言翻译程序_第1张图片

解释型翻译程序相当于“口译”,编译程序相当于“笔译”。所以计算机有了一种语言的翻译程序,才能是其明白这种语言编写的程序。
因此,配置了某种语言的翻译程序的计算机又被人们称为这种语言的虚拟机,
翻译程序和 操作系统与计算机硬件有关,不同操作系统下同一种语言的语言翻译程序是不一样的:同一操作系统下硬件不一样,同一种语言的翻译程序也不一样

语言翻译程序_第2张图片

2.虚拟机
因为编译程序与操作系统和计算机硬件有关,因此为了提高编译程序的可移植性,人们提出了虚拟机的理论,虚拟机就想通用的计算机,有自己的指令系统,但本身没有硬件,为了可以执行虚拟机代码,必须有虚拟机实时运行支持系统把虚拟机代码转换成相应硬件的机器代码,然后加以执行,如下图

语言翻译程序_第3张图片

有了虚拟机,编译程序先把高级语言程序翻译成虚拟机代码,这样就能大幅提高编译程序的可移植性。
虚拟机与机器无关,他不仅可以在本机上执行,还可以通过网络传输到其它配置了相应的虚拟机实时运行支持系统的网点上执行。

你可能感兴趣的:(java基础)