如何查看一个用C++编出来的exe程序的源代码
5个回答
展开全部
除非开发人员把源代码给你看,否则是做不到的。
理由如下:
C是高级语言,而高级语言的编译的过程是,首先将高级语言转化成中间代码,然后再转化成汇编,最后用汇编器转化成相应的机器二进制码,也就是通常windows下的exe文件。由于汇编和机器码的可以说几乎是一一对应的,所以由exe反汇编成汇编代码是可行的,再进一步就不行了。因为高级语言在结构上就和汇编不一样,比如说递归调用,在汇编里肯定会转化为堆栈的非递归实现的。顺着翻译可以,逆翻译却是做不到的。
另外,高级语言自由度远比汇编高,一样的汇编代码完全可以用面貌全不相同的高级语言分别编译出来,所以高级语言和汇编代码并不是一一对应的。
有兴趣可以看一看编译原理的书籍。
如有疑问,欢迎追问。
理由如下:
C是高级语言,而高级语言的编译的过程是,首先将高级语言转化成中间代码,然后再转化成汇编,最后用汇编器转化成相应的机器二进制码,也就是通常windows下的exe文件。由于汇编和机器码的可以说几乎是一一对应的,所以由exe反汇编成汇编代码是可行的,再进一步就不行了。因为高级语言在结构上就和汇编不一样,比如说递归调用,在汇编里肯定会转化为堆栈的非递归实现的。顺着翻译可以,逆翻译却是做不到的。
另外,高级语言自由度远比汇编高,一样的汇编代码完全可以用面貌全不相同的高级语言分别编译出来,所以高级语言和汇编代码并不是一一对应的。
有兴趣可以看一看编译原理的书籍。
如有疑问,欢迎追问。
展开全部
如果有这个方法,软件公司就全部倒闭了,编程人员就不需要冥思苦想,去看看人家怎么做,然后修修改改就好啦。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2020-02-12
展开全部
三个字,不可能。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2018-03-08
展开全部
现在不流行开源了嘛
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用这个软件编写的 当然是用这个VC6.0软件打开了 在迅雷上找找 肯定有的 也可以用EVC4 VS2005
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询