{{item.label}}

反汇编与逆向编程的区别?

171****5038
汇编作品 抄袭
提问时间:2022-06-12 03:56:25
提示:以下回答均以本问题为中心,仅供参考;如需更多帮助,请咨询早鸽顾问。 去咨询
回答 | 共2个
邵若飞
邵若飞
从业9年
ICP许可证食品经营许可证
所在地区:广州市
咨询解答:66
咨询TA

反汇编就是把目标代码转为汇编代码的过程,也可以说是把机器语言转换为汇编语言代码、低级转高级的意思,常用于软件破解(例如找到它是如何注册的,从而解出它的注册码或者编写注册机)、外挂技术、病毒分析、逆向工程、软件汉化等领域。

逆向编程属于逆向工程,逆向编程一般指根据反向分析别人程序的功能而使用其它编程语言编程再现该功能。

2022-06-12 04:57:27
李绍广
李绍广
从业3年
工商变更公司注册
所在地区:广州市
咨询解答:393
咨询TA

反汇编:一般是只对编译器根据高级语言生成的本机二进制可直接在芯片上执行的机器码”解析“为人类可读的汇编形式的代码(实际上最最早期的计算机操作员具备直接阅读机器码和使用机器码编程的能力,不需要转换为汇编形式,这是计算机普及,程序规模也爆炸性增大后,人们就有需要转换为汇编代码来读懂机器码程序)

早期的反汇编目的是编译器生产商用来检查编译器生成代码的性能。

当今主要在得不到源代码的情况下,研究分析其他人的程序,如病毒程序的分析,系统漏洞的挖掘,或者黑灰色产业链里的山寨抄袭功能等。通过反汇编分析其功能、算法、逻辑等。


反汇编实际就属于逆向过程,分析得到别人的功能、算法、逻辑后,再根据得到的信息再开发、增加补丁开发、防御产品开发等,在开发的过程根据实际需求而言,比如分析汇编代码得到的一个算法,可以用任意其它编程语言再现,这就是逆向编程了


逆向编程属于逆向工程,

逆向编程一般指根据反向分析别人程序的功能而使用其它编程语言编程再现该功能。


反向分析(逆向工程)不仅仅是反汇编,对不同系统平台语言平台芯片平台的不同也囊括不同内容,如反汇编则基本有对各种芯片(如8086、arm、c51等芯片的反汇编)

反汇编实际属于反编译,反编译就包括各种语言从低级或中间级语言到高级语言的解析

如.NET平台的C#就可由中间语言MSIL反编译成C#

Java平台的就可由.class中的Java字节码反编译为Java代码

后有其它的dex虚拟机的字节码,自定义的虚拟机字节码等等


总言之,反汇编属于反编译的一个分支,

反编译是实现逆向编程的必经步骤

这些都属于IT界的”逆向工程“范畴。

2022-06-12 04:54:26
没有符合您的答案?立即联系 “在线顾问"
顾问推荐
{{item.label}}
{{item.desc}}
谢鑫城
谢鑫城顾问
擅长:劳务资质,施工许可证
执业6年
咨询专业顾问
最新问答
2023-06-19 06:34:24
北京海丰益商贸中心基本介绍?
北京海丰益商贸中心基本介绍?
2023-06-19 06:33:56
北京佳兴源装饰有限公司第一分公司公司大概情况
北京佳兴源装饰有限公司第一分公司公司大概情况
2023-06-19 06:33:29
北京君燕环保设备有限公司是多久时候成立的?
北京君燕环保设备有限公司是多久时候成立的?
2023-06-19 06:32:19
北京市华盛业石材经营部是多久时候成立的?
北京市华盛业石材经营部是多久时候成立的?
2023-06-19 06:31:54
北京市四季永芳石材经营部基本介绍?
北京市四季永芳石材经营部基本介绍?