Products
GG网络技术分享 2025-12-15 04:12 1
巨大家优良, 今天我要给巨大家讲一讲ARM反汇编的细小暗地,用的是Fromelf这玩意儿工具,听起来是不是hen厉害?别急,听我磨蹭磨蹭道来。
先说说我们要晓得啥是ARM汇编语言。轻巧松ARM汇编语言就是用一些kan起来像英文的指令来告诉电脑Zuo事情的语言。就像我们用中文告诉别人去Zuo啥一样,ARM汇编语言就是用电脑Neng懂的语言来告诉它怎么Zuo。

ARM汇编语言的指令格式有点像英文句子, 有主语、谓语和宾语。比如 “MOV R1, #1”,这里的“MOV”就是谓语,意思是“移动”,“R1”是主语,表示一个寄存器,“#1”是宾语,表示一个数值。通过这些个指令,电脑就Neng晓得要Zuo啥了。
接下来我们要用ADS工具来编译和反汇编我们的代码。ADS工具就像是一个翻译, 它Neng把我们写的汇编代码翻译成电脑Neng懂的语言,然后再反过来把电脑施行后的后来啊翻译给我们kan。
Fromelf这玩意儿工具真实的hen神奇, 它有hen许多功Neng,比如Neng提取程序信息,包括数据段、代码段等不同的段名和段地址。听起来是不是hen麻烦?别担心,我会一步步教你们怎么用。
在网上找反汇编bin文件的时候,我找到了一个细小技巧。按ALT+F7, 打开一个对话框,然后输入一些代码,比如“C:/keil_v5/ARM/ARMCC/bin/fromelf.exe -bin -o ...”,这样就Neng用arm-linux工具链里面的arm-linux-objdump来反汇编了。
学反汇编文件有啥优良处呢?比如说有时候画错电路图,Ru果不Neng反汇编修改代码就会无计可施了。但Ru果Neng反汇编,就Neng轻巧松为企业节省时候和本钱。
在用Fromelf之前,先说说需要编译出可施行文件。Fromelf支持许多种格式的程序文件反汇编, 包括状态输出、十六进制、ASCII码等,方便用户掌握程序文件的施行细节。
Fromelf还有hen许多常用的选项, 比如输出全部的节段信息、输出文件的起始地址、输出交叉引用表、输出符号表信息、输出版本信息等等。
1. -a输出全部的节段信息
$ fromelf --bin -a main.elf
2. -A文件的起始地址
$ fromelf --bin -A 0x200000 -c --output=main.bin main.elf
3. -m输出交叉引用表
$ fromelf --elf -m main.elf
4. -s输出符号表信息
$ fromelf --elf -s main.elf
5. -v输出版本信息
$ fromelf -v
通过本文, 我们了解到了Fromelf工具的基本信息和常用选项,以及在用Fromelf时需要注意的问题。Fromelf功Neng有力巨大,操作轻巧松容易用,是ARM反汇编的优良帮手。
优良了今天的分享就到这里希望巨大家Neng中意。下次再见!
Demand feedback