如何在elf文件中区分拇指指令和手臂指令?

时间:2015-07-22 06:19:27

标签: arm elf disassembly thumb

正如标题所示,我想要反汇编elf文件,但是我遇到了一个问题,我不知道哪条指令是arm指令,哪些指令是拇指指令。因为arm指令是32位,拇指指令是16位,所以反汇编方式不同。那么如何从十六进制指令中检测到thumb指令呢?

1 个答案:

答案 0 :(得分:2)

在ELF文件中,实际上有一种简单的方法 - 只需查看符号表中的函数地址即可。与交互分支的目标地址非常相似,符号地址的底部位表示相关的指令集 - 对ARM函数清除,并为Thumb函数设置(参见the ARM ELF ABI的4.5.3节)。