abyte2[0] = 65451;
abyte2[1] = 36;
abyte2[2] = 67;
abyte2[3] = 99;
abyte2[4] = 65449;
abyte2[5] = 65474;
abyte2[6] = 65446;
abyte2[7] = 65475;
这些是反编译以后的byte数组
为啥会有大于128的数存在呢?
反编译出来的代码比较流畅,都可以直接编译了,不像是经过混淆什么的
我测试了一下,无论我代码怎么写,反编译出来也不会有这么大的数啊
对应smali文件代码
const/4 v1, 0x0 //标记:abyte[0] =
const/16 v2, -0x55 //abyte[0] = -0x55;
aput-byte v2, v0, v1
const/16 v1, 0x24 //abyte[1] = 0x24;
aput-byte v1, v0, v3
const/4 v1, 0x2 //abyte[2]
const/16 v2, 0x43 //abyte[2] = 0x43;
aput-byte v2, v0, v1
const/4 v1, 0x3
const/16 v2, 0x63 //同上
aput-byte v2, v0, v1
const/4 v1, 0x4
const/16 v2, -0x57
aput-byte v2, v0, v1
const/4 v1, 0x5
const/16 v2, -0x3e
aput-byte v2, v0, v1
const/4 v1, 0x6
aput-byte v7, v0, v1
const/4 v1, 0x7
.line 58
const/16 v2, -0x3d
求教,这是啥原因?
为啥smali里会有 16进制负数?