2 liao hb liao_hb 于 2015.07.26 21:35 提问

java的虚拟机有底层都调的是c吗?java能调用汇编嘛?阿门!

RT。往大师围观。java的指针封装的c那一块的指针嘛?java比较c又一次。nnd

2个回答

caozhy
caozhy   Ds   Rxr 2015.07.26 22:35
已采纳

java可以用jni调用原生的代码,你可以用C(嵌入汇编)或者汇编去写一个dll给java调用。
但是注意,java本身是平台无关的,但是原生代码就不是。所以你要是调用了原生代码,那么比如你的pc的软件,就不容易移植给手机了。

liao_hb
liao_hb 回复caozhy: 那么,它俩的c代码库一样吗?能写一套代码吗?
接近 3 年之前 回复
caozhy
caozhy 回复liao_hb: android手机用的一般是arm的cpu,pc是x86,指令集都不同。
接近 3 年之前 回复
liao_hb
liao_hb 编码,c的代码库至少linux和android上应该一样吧。
接近 3 年之前 回复
liao_hb
liao_hb c和汇编编译成的dll应该是一样的吧?汇编拿cpu指令编码,c拿c代码库
接近 3 年之前 回复
CSDNXIAOD
CSDNXIAOD   2015.07.26 21:46

Java虚拟机jvm——java虚拟机底层结构详解
深入java虚拟机(一)——java虚拟机底层结构详解
深入java虚拟机(一)——java虚拟机底层结构详解
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
java虚拟机底层结构详解
本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188 欢迎关注微信账号:java那些事:csh624366188.每天一篇java相关的文章           在以前的博客里面,我们介绍了在Java领域中大部分的知识点,从最基础的java最基本语法到SSH框架。这里面应该包含了在java领域里面的大部分内容了
scala和java的关系
scala底层用到的还是java,只是在java上套了一层壳 .java –> .class –> jvm .scala –> .class –> jvm
最近看了Java 调用C 和 C/C++反调Java,感叹当年的大牛为什么要这么弄
于是自己模仿他的设计也写了个小程序,晒晒,关键就是C++包裹了一个类 struct JNIEnv_ ,内部又通过组合的方式加入了const struct JNINativeInterface_ 的指针 佩服啊,还有那个this 我靠,要是我写我肯定想不到这么写, 我肯定这么写,
[java]深入理解Java虚拟机到底是什么
深入理解Java虚拟机到底是什么
Java虚拟机 和 java虚拟机下的进程
一、什么是Java虚拟机      当你谈到Java虚拟机时,你可能是指:      1、抽象的Java虚拟机规范      2、一个具体的Java虚拟机实现      3、一个运行的Java虚拟机实例 二、Java虚拟机的生命周期      一个运行中的Java虚拟机有着一个清晰的任务:执行Java程序。程序开始执行时他才运行,程序结束时他就停止。你在同一台机器上运行三个程序,就会有
JAVA并发机制的底层实现原理
JAVA代码在编译后会变成字节码,字节码被类加载器加载到JVM中,JVM执行字节码,最终需要转化为汇编指令在CPU上执行,JAVA中所使用的并发机制依赖于JVM的实现和CPU的指令。 1.volatile的应用volatile是轻量级的synchronized,它只是用来保证共享变量的可见性,不能保证操纵的原子性。1.1—volatile保证共享变量可见性有volatile修饰的变量进行写操作的时候
java虚拟机java虚拟机
java虚拟机java虚拟机java虚拟机java虚拟机java虚拟机
java调用C++的过程?
jni是java和C、C++通信的桥梁。 java适合写上层的应用,C、C++适合写底层的应用。因为C、C++就是跟底层打交道的。 当然这里并不讨论那么多,只是我要记住这一点,我所以做的工作就是如何使用jni,把留在.java中的本地的接口,让C,C++代码实现,然后供java接口使用。是的,我想做的工作就是这样。 一、在命令提示符下,用javah命令 使带有nati
java运行库和JDK、java虚拟机有什么区别!
转载地址:http://hi.baidu.com/cwyin/blog/item/13d5a538c2bf66d33a87ce83.html 对于java初学者来说,往往不懂区分jdk和jre的区别,实际上这两个东西差别很大的,有必要了解一下: ·SDK(Software Development Kit)一般指软件开发包,可以包括函数库、编译程序等。 ·JDK(Java Developm
Java调用C++动态库具体实现
在我们编写java程序中经常会用到native方法,这些native方法就是用C或者C++编写的动态库方法,如何实现java调用这些方法,以下是根据自己的学习经验总结如下: 1.创建项目   首先在Eclipse中创建一个项目,创建两个类第一个类是HelloWorld.java 第二个类是TestDll.java,HelloWorld.java 代码中是你要创建的本地库方法,要用关键字nati