土木在线论坛 \ 注册考试 \ 注册电气工程师 \ 什么是反汇编?有什么作用?

什么是反汇编?有什么作用?

发布于:2017-06-26 16:33:26 来自:注册考试/注册电气工程师 [复制转发]
什么是反汇编?有什么作用?把目标代码转为汇编代码的过程,也可以说是把机器语言转换为汇编语言代码、低级转高级的意思,常用于软件破解(例如找到它是如何注册的,从而解出它的注册码或者编写注册机)、外挂技术、病毒分析、逆向工程、软件汉化等领域。学习和理解反汇编语言对软件调试、漏洞分析、OS的内核原理及理解高级语言代码都有相当大的帮助,在此过程中我们可以领悟到软件作者的编程思想。总之一句话:软件一切神秘的运行机制全在反汇编代码里面。【解密专家+V信:icpojie】
通常,编写程序是利用高级语言如C,C++,Delphi等高级语言进行编程的,然后再经过编译程序生成可以被计算机系统直接执行的文件(机器语言)。反汇编即是指将这些执行文件反编译还原成汇编语言或其他语言。但通常反编译出来的程序与原程序会存在些许不同,虽然执行效果相同,但程序代码会发生很大的变化,要读懂反汇编需要有扎实的高级语言编写功底和汇编功底。
有许多程序可以进行逆向操作即反编译以求修改,例如Flash的文件生成的SWF文件,可以被反汇编成Flash原码,但可以发现与原程序代码发生了很大变化。
静态反汇编
静态反汇编是从反汇编出来的程序清单上分析,从提示信息入手进行分析。目前,大多数软件在设计时,都采用了人机对话方式。所谓人机对话,即在软件运行过程中,需要由用户选择的地方,软件即显示相应的提示信息,并等待用户按键选择。而在执行完某一段程序之后,便显示一串提示信息,以反映该段程序运行后的状态,是正常运行,还是出现错误,或者提示用户进行下一步工作的帮助信息。
为此,如果我们对静态反汇编出来的程序清单进行阅读,可了解软件的编程思路,以便顺利破解该软件,也就是我们常说的破解版即盗版。反汇编亦是外挂设计最重要的环节,可以说没有反汇编就没有外挂。【解密专家+V信:icpojie】
  • bjfeida
    bjfeida 沙发
    理论上可以破解软件,实际上做不到。量太大了,上亿条指令,你读的出来吗?:lol
    2017-06-28 00:40:28

    回复 举报
    赞同0
这个家伙什么也没有留下。。。

注册电气工程师

返回版块

33.72 万条内容 · 938 人订阅

猜你喜欢

阅读下一篇

2017年勘察设计注册工程考务文件

http://www.pqrc.org.cn/Details/Publish_Details_Form.aspx?RowGuid=1e672032-bcd2-465a-9aea-1ab04a6a64e2 链接中有报考条件及规范清单

回帖成功

经验值 +10