[发明专利]一种固件代码反汇编中端模式差异的处理方法有效
申请号: | 201210489305.4 | 申请日: | 2012-11-27 |
公开(公告)号: | CN102968330A | 公开(公告)日: | 2013-03-13 |
发明(设计)人: | 刘金硕;王谢兵;李少腾;章喻龙;刘源;刘天晓;王亚鸽;曾秋梅 | 申请(专利权)人: | 武汉大学 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 武汉科皓知识产权代理事务所(特殊普通合伙) 42222 | 代理人: | 鲁力 |
地址: | 430072 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种固件代码反汇编中端模式差异的处理方法。首先初始化机器码;然后由检测模块进行机器码检测,检测机器码的长度L,保证L是N的整数倍,若不足则补零,将数组C转换成数组D。其中N是依据不同硬件情况决定,若硬件的存储单元大小为Mbit,则N=M/2;再由局部逆置模块将数组D中的元素以每N个为一个单元U,单元内部对半调换;最后由全局逆置模块将单元U编号为0、1、……、n-1,分别将编号之和为n-1的两个单元的内容进行逆置。利用本发明可以有效解决各种微处理器的反汇编机器码的正确性问题,在反汇编之前对智能电能表内部MCU芯片提取的机器码的顺序加以调整,提高最终生成的高级语言的精确度。 | ||
搜索关键词: | 一种 代码 汇编 中端 模式 差异 处理 方法 | ||
【主权项】:
一种固件代码反汇编中端模式差异的处理方法,其特征在于,包括以下步骤:步骤1:由初始化模块将从芯片中提取的机器码存放在数组C中;通常情况下机器码样本为二进制形式或十六进制形式,若为二进制形式,则将其转换为十六进制形式;步骤2:由检测模块进行机器码检测,即:检测机器码的长度L,保证L是N的整数倍,若不足则补零,将步骤一中的数组C转换成数组D,N是依据不同硬件情况决定,若硬件的存储单元大小为 M bit,则N = M / 2;步骤3:由局部逆置模块将步骤2中的数组D中的元素以每N个元素为一个单元U,单元内部对半调换,即前N/2个元素和后N/2个元素整体调换位置;步骤4:由全局逆置模块将步骤3中的单元U编号为0、1、……、n‑1,分别将编号之和为n‑1的两个单元的内容进行逆置,即0单元和n‑1单元交换内容;1单元和n‑2单元交换内容;2单元和(n‑3)单元交换内容……m单元和(n‑m‑1)单元交换内容。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉大学,未经武汉大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201210489305.4/,转载请声明来源钻瓜专利网。
- 上一篇:高压输电线路测温系统
- 下一篇:一种电子称架