是否可以集成JVM';将汇编语言转换成标准的高级Java代码?
我试图将Java汇编代码(使用Jasmin(Java中的汇编接口))与标准Java代码合并是否可以集成JVM';将汇编语言转换成标准的高级Java代码?,java,bytecode-manipulation,jasmin,Java,Bytecode Manipulation,Jasmin,我试图将Java汇编代码(使用Jasmin(Java中的汇编接口))与标准Java代码合并 public class SomeClass{ public void testPrinting(){ System.out.println("Hello World"); } .method public myMethod()V //Some work .end method } 这可能吗?您可以使用Jasmin创建一个类,并在任何jav
public class SomeClass{
public void testPrinting(){
System.out.println("Hello World");
}
.method public myMethod()V
//Some work
.end method
}
这可能吗?您可以使用Jasmin创建一个类,并在任何java项目中使用它。在同一个类中混合使用java和“汇编”代码似乎并不容易实现,但您可以从标准java类中的“汇编源”类调用一些代码
class StandardJava {
public void myMethod() {
Assembly.someMethod();
}
}
您需要编写自己的预处理器。这将是困难的,特别是如果Jasmin代码引用Java中定义的成员,而Java代码引用Jasmin代码中定义的成员。我认为您最好编写一些Java,对其进行反汇编,并将其与您的Jasmin代码合并。您能举一些例子来支持您的答案吗!在C/C++中,使用汇编来提高性能。然而,对于Java,字节码用于虚拟机,JVM非常敏感地针对编译器生成的结构进行了调优。如果手写的字节码速度较慢,我也不会感到惊讶@Peter Lawrey如果我尝试编写一些例程(遵循Jasmin)来接受一些参数列表和一些方法名称,然后将其推送到堆栈上,然后运行它(请记住,该方法属于使用标准java编写的某个.class文件),这是可能的吗???您可以在java中用一行代码实现这一点。你能给我举一个例子,说明在Java中不能做的事情吗?