是否可以集成JVM';将汇编语言转换成标准的高级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

我试图将Java汇编代码(使用Jasmin(Java中的汇编接口))与标准Java代码合并

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中不能做的事情吗?