java的底层是c吗 java虚拟机是用什么语言编写的?它的原理谁能通俗的讲出来吗?
java虚拟机是用什么语言编写的?它的原理谁能通俗的讲出来吗?
Java虚拟机的功能是执行Java字节码,其编码实现是一个死循环。每个循环都是获取字节码并执行字节码的过程,因此与其他程序没有本质区别。主流的JavaVM大多是用C语言实现的,然后用汇编语言辅助实现,用Java实现JavaVM的情况有一些,但不多。
下面是使用C语言在智能设备中实现虚拟机的一个片段。
此代码是短加法字节码的实现。
这段代码只是获取字节码并执行它。你认为JavaVM就是这样吗。
为了优化虚拟机的效率,很多人选择用汇编的方式重写执行频率高的代码。
小结是C语言实现的许多,将与汇编结合起来作为辅助工具。有其他语言,但不是主流。
用C#、C 、Java能编写出Adobe等级的行业软件吗?
Adobe软件工具的核心是算法,它可以在所有三种语言中很好地实现。
上世纪90年代初,我做了一个骨折图像处理的基金项目,它有很多类似adobe的功能。当时,还没有用C语言编写的CSharp、Java语言或Adobe软件,更不用说这些面向对象的语言了。
用C语言编写,相当于手工制作。擦除一行需要逐位对每个点进行异或处理。与C#不同,可以删除对象。对于图像去噪、去毛刺、二值化和特征提取,需要编写相应的算法。例如插值算法用于边缘增强和平滑,圆形邻域法用于模式匹配,现在很多算法都有函数库,可以通过接口调用函数库。它简单得多,使用C#、C和Java就足够了。
java的底层是c吗 java虚拟机是c写的吗 java是什么语言编写的
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。