程序本质
代码是如何被执行的?CPU、操作系统、虚拟机各司何职?
在开篇词中,我们讲到,专栏并非讲解Java语法如何使用,而是探究更本质的东西,本节,我们就来探讨一下,代码是如何被执行的?在执行的过程中,CPU、操作系统、虚拟机都起了什么样的作用?不过,本节的内容偏向整体的、粗略的介绍,对于各个知识点更加详细的讲解,我们会在专栏后面的内容中慢慢输出。
一、解释型、编译型、混合型语言
要回答上述问题,我们要从最基础的讲起。
我们知道,CPU只认识机器指令(也叫做CPU指令、机器码),用像Python、C++、Java这样的高级语言编写的代码,需要编译(编译的意思实际上就是“翻译”)为机器指令之后,才能被CPU执行。而不同类型的语言,其编译过程也是不同的,据此我们将其分为三类。