泛泰Bin文件格式解析及解压出IMG方法
Binx解压成bin可以使用suky发布的工具。
这里需要感谢suky共享的资料和教程,让我也偷懒一回吧。
解压bin的工具及其Python源代码也有了。程序猿的话通过阅读源代码就可以了解一切了。
但此篇文章还是按部就班地分析一下bin文件的格式,以及讲解如何从bin中解压出img的方法。
这里提供本人制作的bin解压工具,献丑了……
工具下载地址:
http://download.csdn.net/detail/benjaminwan/8372301
工具简易使用教程:
http://blog.csdn.net/benjaminwan/article/details/8854542
以下内容仅供参考。
一、找到关键的地址
首先打开bin文件,转到文件尾部。可以看到一个4字节地址。
4字节正好是32位Int型变量,以小端序将其读出为0x48 00 88 00
那么转到此地址看看,以01开头的16个字节跳过,那么就是我们需要的信息了。
二、读取内部段信息
从48008810H开始,每96个字节为一段,下面选中的为第一段。
根据suky提供的源代码对段信息的定义整理一下,代入表格:
起始 |
长度 |
内容 |
实际内容 |
含义 |
0 |
1 |
主分区序号 |
0C |
分区号12 |
1 |
1 |
扩展分区序号 |
00 |
扩展分区序号0 |
2 |
2 |
ID号 |
00 00 |
ID号0 |
4 |
4 |
是否可写 |
54 01 00 00 |
可写 |
8 |
4 |
起始地址 |
00 00 00 00 |
0x00000000 |
12 |
4 |
零 |
00 00 00 00 |
无意义 |
16 |
4 |
长度1 |
00 88 00 00 |
0x00008800 |
20 |
4 |
长度2 |
00 02 00 00 |
无意义 |
24 |
4 |
区块大小 |
00 02 00 00 |
512字节 |
28 |
4 |
页大小 |
00 02 00 00 |
512字节 |
32 |
16 |
FF |
全是FF |
无意义 |
48 |
48 |
镜像名称 |
50484F4E45494E464F |
PHONEINFO |
因为GPT分区表都是主分区,所以就扩展分区号都为0.
分区是否是否可写判断:0x154代表可写,0x160代表只读。
其中的镜像名称就是要解压出来的img文件的名称,而”起始地址”和”长度1”就是img文件在此bin文件中的解压地址。
那么每段都这么读取就可以得到如下信息:
从这个表就可以解压出相应的img文件了。
泛泰Bin文件格式解析及解压出IMG方法相关推荐
- linux+gunzip解压命令,Linux gunzip命令解析 gunzip解压文件的方法
我们已经讨论过 Linux 下 gzip 命令的用法.对于初学者来说,gzip 工具主要用于压缩或者展开文件.解压时,在 gzip 命令后添加 -d 选项即可,使用示例如下: gzip -d [com ...
- linux下 tar解压 gz解压 bz2等各种解压文件使用方法
点击打开链接 linux下 tar解压 gz解压 bz2等各种解压文件使用方法 .tar 解包:tar xvf FileName.tar 打包:tar cvf FileN ...
- Ubuntu解压文件的方法
一般通过默认安装的ubuntu是不能解压rar文件的,只有在安装了rar解压工具之后,才可以解压.其实在ubuntu下安装rar解压工具是非常简单的,只需要两个步骤就可以迅速搞定. ubuntu 下r ...
- tar gz bz bz2 等各种解压文件使用方法
.tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) --------------- .gz 解压 ...
- 测试掌握的Linux解压,轻松掌握Linux压缩/解压文件的方法
对于在Linux下解压大型的*.zip文件,相信大家一般都会通过使用winrar直接在smb中来进行解压的操作,虽然说最终可能能够解压但有时候会存在解压时间长或者网络原因出错等故障的情况出现.那么有没 ...
- python遍历目录压缩文件夹_Python实现多级目录压缩与解压文件的方法
本文实例讲述了Python实现多级目录压缩与解压文件的方法.分享给大家供大家参考,具体如下: 咱向来就是拿来主意,也发个东西供同行"拿来"使用吧 咱信奉的就是少量的代码完成大量的工 ...
- tar 解压出指定文件
tar 解压出指定文件 There is no nutrition in the blog content. After reading it, you will not only suffer fr ...
- Arch Linux下解决zip解压乱码的方法
Arch Linux下解决zip解压乱码的方法 完全转载于一个大佬的论坛发帖,感觉很有用但没有搜到CSDN的相关文章所以转过来,瑟瑟发抖 安装unarchiver,用unar解压zip文件.(给kde ...
- 天龙八部无法启动该程序因为计算机丢失,《天龙八部》解压出问题了,怎么办?...
<天龙八部>解压出问题了,怎么办? 正在释放 Uninstall.exe 正在释放 Data\Brushes.axp 正在释放 Data\Config.axp 正在释放 Data\Effe ...
- tar 解压出指定文件到指定目录
tar 解压出指定文件到指定目录 There is no nutrition in the blog content. After reading it, you will not only suff ...
最新文章
- Linux中autoduck批量对接,科学网—用AutoDock进行分子对接教程——半柔性对接 - 杜文义的博文...
- 可视化-grafana_使用influxDB数据
- Windows下MongoDB的安装与设置MongoDB服务
- 数学建模4 论文写作排版和技巧
- python 等值线图_python – matplotlib等值线图:对数刻度的比例色度级
- 数据库 | OMIM (在线人类孟德尔遗传)数据库简介
- docker container
- 不懂函数能学c语言吗,不会函数能学C语言吗
- javaScripct入门教程
- php两个数组删除相同数据,php – 如何从两个数组中删除重复对?
- linux VM命令下查找
- 镜像神经元训练方法图解,镜像神经元怎么训练
- 银行业务模拟系统(C/C++实现内含详细注释)
- win10打不开计算机配置似乎是正确的,Win10系统软件打不开提示“并行配置不正确”如何解决...
- 2022-2027年中国活性染料行业市场深度分析及投资战略规划报告
- “铁老大”价格坚冰松动 成都火车票打折三成
- 微信小程序运营系列(八)——怎么玩转中高频行业运营?
- gMap使用简单介绍
- 有12个小球,外形相同,其中一个小球的质量与其他11个不同
- Linux服务器中Tomcat在执行./Shutdown.sh的时候报错
热门文章
- 大华相机RTSP获取视频方式
- JavaScript使用Modbus协议实现RTU设备连云
- 小程序 房租水电费记录管理_收租小程序开发有哪些功能和优势?
- LeaRun低代码平台快速开发工程项目管理软件
- 一个比较好看的彩带飘飞和点击效果 canvas实现
- 手机蓝牙串口的调试助手demo实现
- mac定时备份mysql_定时备份mysql数据库
- Mysql 分组求和
- STM32之提升迷之自信(时钟的制作)
- winform直接控制云台_手持云台(稳定器)推荐,2020年双十一热销手机/相机手持云台(稳定器)推荐...