首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 156 毫秒
1.
一种基于重定位信息的二次反汇编算法   总被引:1,自引:1,他引:1  
反汇编技术是静态分析二进制程序的基础,目前广为采用的反汇编算法是线性扫描和递归行进算法。前者无法正确处理代码段中嵌入数据的情况,后者则必须解决间接跳转目的地址的预测问题。本文介绍了这两种算法的原理,分析了其存在的问题,并利用二进制文件中旬重定位信息对它们进行了优化。将优化后的两种方法结合起来,给出了一种新颖的二次反汇编算法,这种算法能够捕获反汇编过程中出错的情况,从而控制错误传播,并使得基于反汇编代码的应用可以针对出错情况进行相应的处理。  相似文献   

2.
由于嵌入式系统可执行目标代码的多样性与灵活性,对其反汇编后,结果程序的结构化程度以及易读程度均不理想。为了更好地分析反汇编结果程序,该文提出了一种对反汇编结果程序进行子程序划分的算法,对算法设计所依赖的数据结构以及算法实现过程进行了描述和分析,给出了反汇编结果程序结构分析算法的性能测试分析结果。  相似文献   

3.
针对传统静态递归反汇编算法因无法解析间接跳转指令而导致反汇编结果不完整的问题,提出一种基于函数划分块和置信度的递归反汇编算法:以函数为划分块,对代码间隙进行多次递归扫描,获取反汇编过程中可能遗漏的重要基本块;建立置信度评估函数,以置信度为依据,剔除冲突的基本块,筛选出高置信度的基本块,用于补充和优化反汇编结果。实验证明,改进后的递归反汇编算法具有较高的反汇编精度。  相似文献   

4.
针对子程序异常返回对反汇编操作的干扰,提出一种能够有效对抗该技术的反汇编算法。该算法通过2遍解码流程对目标可执行程序进行扫描,模拟代码执行过程中对内存栈的操作,从而正确解码出经过混淆处理的可执行程序。通过与2款常用反汇编器IDAPro和OBJDump的反汇编结果进行比较,证明该算法能够有效地识别出子程序异常返回的情况,从而有效提高反汇编的正确率。  相似文献   

5.
针对子程序异常返回对反汇编操作的干扰,提出一种能够有效对抗该技术的反汇编算法。该算法通过2遍解码流程对目标可执行程序进行扫描,模拟代码执行过程中对内存栈的操作,从而正确解码出经过混淆处理的可执行程序。通过与2款常用反汇编器IDAPro和OBJDump的反汇编结果进行比较,证明该算法能够有效地识别出子程序异常返回的情况,从而有效提高反汇编的正确率。  相似文献   

6.
静态反汇编算法研究   总被引:1,自引:0,他引:1  
恶意代码通常都是以二进制代码形式发布的,利用这种形式的代码来分析程序的逻辑功能是非常困难的,而如果利用反汇编器将二进制代码转化为较容易理解的汇编代码将更利于对恶意代码的分析,因而研究二进制代码的反汇编算法显得极为重要。首先介绍两种传统的静态反汇编算法:线性遍历和递归遍历算法,分析它们的优点以及存在的问题,最后介绍现代静态反汇编算法的一些新的研究进展。  相似文献   

7.
基于控制流的静态反汇编算法研究   总被引:4,自引:0,他引:4  
该文在分析各种类型的指令对程序静态流程影响的基础上,提出了一种基于程序流程遍历图的静态反汇编算法,并给出了一种基于统计学的代码间隙填充技术对由间接跳转和间接调用所引用的代码区进行反汇编的方法。  相似文献   

8.
本文通过对一个实用的反汇编工具系统MTOA的设计思想、系统功能、系统结构、处理流程和主要特点的讨论,阐述了反汇编工具的设计原理、方法和实现过程,并有效地解决了设计过程中存在的主要技术难点和关键问题,从而把反汇编出来的程序的质量提高到了一个崭新的水平。  相似文献   

9.
一种基于中断处理机制的动态反汇编算法   总被引:1,自引:0,他引:1  
杨慕晗 《计算机科学》2008,35(12):280-284
传统的反汇编是静态进行的,它难以处理逻辑陷阱、花指令、代码中的数据、动态控制流等问题,这就导致其最终的反汇编结果可能不完整,存在错误.一段特意设计的代码,可以用动态控制流替代静态控制流;一段特意设计的花指令,可以让静态控制流关系任意复杂,这都将使静态反汇编分析难以进行.让代码运行起来,动态地进行反汇编,可以解决上述静态反汇编遇到的问题.结合计算机的中断处理机制,使得代码的实际执行路径是可知的.针对实际执行到的计算机指令进行反汇编,确保了反汇编结果的准确性;反复执行代码,在时间上进行积累,可以确保反汇编结果的完整性不断增加并趋于完整.  相似文献   

10.
刘金硕  王谢兵  郑稳  邓娟  陈鑫 《计算机应用》2014,34(12):3507-3510
电力企业在将反汇编技术应用于嵌入式智能电表软件一致性检测模型时出现了因不同硬件而产生差异的字节序问题和程序运行时的嵌入式设备内存受限问题,从而影响了模型整体的性能。针对这两个关键问题进行分析,结合嵌入式智能电表内部特征和硬件体系架构理论的深层探讨,依次提出了目标代码双逆置预处理算法(CDIPA)和分段反汇编算法(SDA)。对原代码使用目标代码双逆置预处理算法得到调整字节顺序的代码,分别将原代码和调整代码反汇编获得两种待测结果,结合硬件信息分析结果并以匹配度高的指令作为最终结果从而解决了字节序问题;分段反汇编算法通过调整反汇编输入规模并分次运行的方法解决设备内存受限问题。实验结果表明将这两种算法用于给定的电表设备,可以有效解决上述关键问题,同时算法也表现出良好的健壮性和可移植性。  相似文献   

11.
采用Web相关技术设计开发了一个三维机械产品远程动态装配/拆卸过程仿真系统.给出了服务器和客户端的信息模型,叙述了操作连续控制算法和同步控制系统结构以及协同装配和拆卸过程的控制协议,介绍了系统应用实例.文中系统对于改善产品售后服务质量、提高客户满意度有积极的作用.  相似文献   

12.
针对曲线弯曲二叉树在曲线形态表达上的不足,以弯曲作为曲线形态的单元,探讨了曲线的多尺度表达与弯曲树状结构间的关系,提出了曲线的弯曲多叉树模型以及探测方法,并利用曲线弯曲多叉树模型制定了基于弯曲的曲线综合化简策略。该模型在等高线化简上的应用表明,其无论在线要素的整体形态保持上,还是在地理特征的一致性保持上都非常有效。  相似文献   

13.
二叉树的遍历操作和其它操作的算法实现,都必须先创建二叉树。分析常规创建二叉树方法的特点和不足,给出利用中序遍历和后序遍历结果还原二叉树的算法,利用这一方法,给出由前序遍历和后序遍历还原二叉树的算法,最后,提供利用次层遍历和中序遍历还原二叉树的算法。  相似文献   

14.
一种快速构建CAN网络拓扑算法   总被引:1,自引:0,他引:1  
受二叉树思想的启发,在P2P网络拓扑管理协议T-Man和Kademlia网络快速构建算法的基础上,提出了从非结构化P2P网络快速构建CAN网络的算法。Kademlia网络为二叉树拓扑结构,CAN网络基于空间划分,由于已经提出了Kademlia网络快速构建算法,通过把CAN的空间划分方式强制定义为树图的空间划分方式,研究问题转换为由Kademlia网络的二叉树结构向CAN网络的树图结构转换及构建相应路由表的问题。实验表明,该算法能在对数的时间内构建出CAN网络。  相似文献   

15.
二叉树支持向量机分类算法主要是构造一个偏二叉树或是构造一颗完全二叉树,但是偏二叉树分类的准确性虽高而分类的效率低,完全二叉树分类的效率高但是准确性不高。本文提出一种算法,结合了以上两种二叉树构造方法的优点,并且更能反映样本的真实分布。实验结果表明,新算法具有较高的推广性能。  相似文献   

16.
严格平衡二叉排序树及其构造   总被引:1,自引:0,他引:1  
论文对一直沿用至今的平衡二叉树和平衡二叉排序树概念的合理性提出质疑,给出了二叉树结点的严格平衡因子和严格平衡二叉树及严格平衡二叉排序树的新概念。论文给出的构造严格平衡二叉排序树的递归算法及二叉排序树元素插入和删除的严格平衡化过程比动态构造平衡二叉排序树的传统Adelson-Velskii和Landis算法更加简单而自然。  相似文献   

17.
文字在经过一系列艺术处理后,许多现有的识别特征会产生歧义而导致识别准确率下降。文章讨论了在文字的变形处理不会改变文字内在的框架情况下的识别特征检测。首先利用最小生成树获取文字图像所对应的树型结构,然后约简非分叉节点(即节点的邻接节点数为2的中间节点),提出一个实用的无序无标签二叉树之间的相似测度计算算法,与原文字图像所对应的约简树进行相关度分析检测,最后获得文字相似性度量结果。这种算法着重分析图像中的分枝特征,因此对于不会改变文字内在框架的艺术处理来说,文字本身的分枝特征能够很好地被检测出来,从而实现艺术文字的识别。  相似文献   

18.
杨晓波  陈邦泽 《软件》2011,(12):24-27
摘要:在计算机科学领域中,二叉树是一种非常重要的非线形结构,实现其可视化具有重要意义。本文运用面向对象方法,利用完全二叉树特点实现了二叉树的可视化,实现了周游二叉树算法的计算可视化,实现了动态可视遍历过程和算法的动态演示同步进行。  相似文献   

19.
通过研究二叉树结点顺序存储序号的性质,演绎出了二叉树非递归无堆栈的一些新算法,包括完全二叉树两结点最近共同祖先(LCA)的查询算法、中序遍历算法、顺序序列与中序序列的互转算法以及从中序序列恢复层次结构的算法。新的算法都具有很好的时间复杂度,其中LCA查询算法可在常数时间内实现且不需要任何预处理过程,其他算法均为线性时间复杂度。所有算法均为常数空间复杂度,仅涉及到简单的加减运算与位运算,既可用于常规程序设计也可用于嵌入式等专业开发。  相似文献   

20.
本文主要介绍数据结构中二叉树的生成,以及二叉树的先序、中序和后序的非递归算法。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号