0

Prolog でバイトコードの静的解析を行おうとしています。MethodGen から命令リストを取得するために bcel ライブラリを使用しています。aload_0 の場合、取得します 0:aload_0[42](1)

aload_00番目のローカル変数をロードすることを意図していることを理解しています。しかし、次のビット、つまりを理解するのに苦労しています[42](1)。たとえば、次のような他の指示もあります。

invokespecial[183](3) 8
return[177](1)

誰かがそれらが何であるか説明してもらえますか?. 高く評価します!

4

1 に答える 1

2

42のオペコードですaload_0183のオペコードですinvokespecial177リターンなどです。after invokespecial は、8おそらく命令が使用する 16 ビットの定数プール インデックスです。

https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-7.html

于 2017-01-12T04:30:25.270 に答える