【发布时间】:2013-09-03 04:52:43
【问题描述】:
我最近研究了一些 smali 代码,很想学习它。我检查了 dalvik 字节码参考,但我找不到关于何时/如何使用这些的结构参考
.locals
.local
.registers
.prologue
.line
.annotation
.parameter
你知道其他资源来解释更多的 smali 结构吗?
【问题讨论】:
标签: java android dalvik dex smali
我最近研究了一些 smali 代码,很想学习它。我检查了 dalvik 字节码参考,但我找不到关于何时/如何使用这些的结构参考
.locals
.local
.registers
.prologue
.line
.annotation
.parameter
你知道其他资源来解释更多的 smali 结构吗?
【问题讨论】:
标签: java android dalvik dex smali
除了 .locals、.registers 和 .annotation 之外,大多数这些都是作为方法的一部分存储的调试信息的一部分。您可以在dex-format 文档的 debug_info_item 部分找到有关这些的更多信息。
对于 .locals 和 .registers 指令,您可以通过两种不同的方式指定方法中可用的寄存器数量(即 code_item 的 registers_size 字段,根据 dex-format 文档)。您可以在 smali googlecode 网站上的Registers wiki page 上找到有关两者之间差异的更多信息。
最后,.annotation 指令定义了一个注解。您可以在dex-format 文档中找到更多信息。具体来说,您需要查看以下项目:
【讨论】: