Android Smali指令具有误导性
我有一个apk。Android Smali指令具有误导性,android,smali,Android,Smali,我有一个apk。 我使用apktool.jar获取smali源代码。 但是生成的smali文件很奇怪,因为它包含所有针对v0的指令 示例说明: mul-int v0, p0, p0 rsub-int v0, v0, 0x201 move/from16 v0, v1 每个方法的末尾都有.array数据。 理解这一点的任何帮助都会非常有用?关于.array数据,具体来说,这是一组数据,用于使用fill array data指令初始化数组 有关更多信息,请查看fill array data
我使用apktool.jar获取smali源代码。
但是生成的smali文件很奇怪,因为它包含所有针对v0的指令 示例说明:
mul-int v0, p0, p0
rsub-int v0, v0, 0x201
move/from16 v0, v1
每个方法的末尾都有.array数据。理解这一点的任何帮助都会非常有用?关于.array数据,具体来说,这是一组数据,用于使用fill array data指令初始化数组
有关更多信息,请查看fill array data payload结构和fill array data指令,在上,我没有看到您提到的指令有任何奇怪之处。你觉得它们有什么奇怪的地方?因为所有的指令都注定是v0的。这里,前两条指令的效果被第三条指令抵消。为什么有人需要这样的指示呢?啊,好的。我不知道那些是实际的顺序指令。你的评论听起来像是对说明书的随机抽样。你是说所有指令都使用目标v0吗?在这种情况下,可能只是编程错误(例如int a=0x201-b*b;a=d;),我想可能是编程错误。我试着安装和运行APK。安装进行得很顺利,但是运行main活动导致了SIGSEV。这真的很奇怪。我猜这只是一个无效的apk..我理解这一点,但我的疑问是:对于所有指令,目标操作数都是v0,没有指令使用v0作为其源操作数。当计算没有任何用处时,它又有什么用处呢。