且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

常见的几种语言C,C#,JAVA,Python的运行原理

更新时间:2022-04-21 08:12:36

      相对于常见的几种语言C,C#,JAVA,Python的运行原理


由于CPU只能识别机器码,即我们常说的二进制码01010101

有任何语言在计算机上运行最终都要转化成CPU能够识别的机器码010101


对于C语言:通过C语言代码编译器将C语言写出的代码进行编译得到机器码,然后机器码就可以交给CPU去识别,即运行


对于其他语言:代码编译器将代码编译成字节码,然后通过各自的虚拟机将字节码进一步处理(转换)成机器码(0101010101),然后在处理器上运行


Python和C 首先Python是用C开发而来的


 Python的类库齐全并且使用简洁,如果实现同样的功能,Python可能用几行代码完成,而C可能要上百行代码才能实现


 Python和C的运行速度,因为Python多了一个编译器将Python代码转换成字节码,然后将字节码交给Python的虚拟机转换成转换成机器码,而C直接有编译器直接转换成机器码,所以Python和C语言相比,C语言运行更快


 Python和java、C#等

 Linux原装都带有Python,无需安装,而其他语言没有,虽然他们都有各自的丰富的类库,

 Python在速度上可能少逊色一点


   Python的种类:

 

  • Cpython
        Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上。

  • Jyhton
        Python的Java实现,Jython会将Python代码动态编译成Java字节码,然后在JVM上运行。

  • IronPython
        Python的C#实现,IronPython将Python代码编译成C#字节码,然后在CLR上运行。(与Jython类似)

  • PyPy(特殊)
        Python实现的Python,将Python的字节码字节码再编译成机器码。

  • RubyPython、Brython ...






      本文转自027ryan  51CTO博客,原文链接:http://blog.51cto.com/ucode/1708260,如需转载请自行联系原作者