2017-03-08 183 views
0

在putty中我试图创建一个Jasmin程序,它在汇编并作为Java程序运行时将输出整数“431”。当我试图组装程序时,控制台说第11行有语法错误。我无法弄清楚它是什么。这里是我的代码:Jasmin中的汇编语言 - 获取语法错误

.class public Lab3_JasminExample 
.super java/lang/Object 

.method public <init>()V 
     aload_0 
     invokespecial java/lang/Object/<init>()V 
     return 
.end method 

.method public static main ([Ljava.lang.String;)V 
     .limit stack 10 
     .limit locals 10 

     getstatic java/lang/System/out Ljava/io/PrintStream; 

     sipush 431 

     invokevirtual java/io/PrintStream/println(I)V 
     return 
.end method 

第11行将是“.limit堆栈10”,我看不出我写的是怎么回事。我做错了什么?

回答

2

错误可能会在一条线上报告,但会由前面的(或后面的!)线触发,因此请始终查看有问题的线。

我茉莉(版本2.4)正确地报告上线误差10

a.j:10: Warning - Syntax error. 
.method public static main ([Ljava.lang.String;)V 
               ^

这是一个愚蠢的错误真的:有方法名(main)和它的描述符(([Ljava.lang.String;)V)之间的空间

第10行应该是.method public static main([Ljava.lang.String;)V