文章目录
-
分析dex文件不会用到ARM汇编,但是分析elf文件时会用到ARM汇编。
-
elf文件:后缀为.so的文件,官方名称为动态链接库。是可执行文件,对内统称二进制文件。
-
判断一个文件是否为elf文件:使用二进制工具打开,如果文件头部分为7F 45 4C 46,则表示其为elf文件。
-
二进制编辑工具会讲二进制转换为十六进制进行展示
4个二进制数等于1个十六进制数
2个十六进制数构成1个字节(八位) -
Android与ARM处理器:
Android支持的处理器架构:ARM、x86、MIPS(便携设备) -
汇编:
介于高级语言和低级语言之间的中间语言。 -
分析和修改汇编指令:
赋值、跳转、算数运算、位移运算、堆栈操作、内存读写指令、函数调用约定。Thumb(16位)、Thumb2(32位)、ARM(32位)
-
用户模式:
不分组寄存器(R0-R7)
分组寄存器(R8-R14)
传递参数与返回值(R0-R3),返回值一般默认用R0接收
保存栈顶地址(R13/SP)
栈顶指针寄存器sp,sp始终指向栈顶
保存函数的返回地址(R14/LR),LR就是保存当前存放函数的下一条执行指令的地址
程序计数器R15(pc)