【问题标题】:Why can't we extract source code from executable file?为什么我们不能从可执行文件中提取源代码?
【发布时间】:2014-06-18 10:43:30
【问题描述】:

我需要一些关于可执行文件的信息,提前谢谢,这是我们年级的新课题。

我看到很多问题询问如何提取,但我的问题是为什么我们不能得到原始源代码?是的,使用反编译器我们可以提取,但这些代码并不是用于开发程序的确切代码。
我的意思是,如果一台计算机正在运行一个软件,它显然必须有一些代码可以参考,那么为什么我们不能得到那个代码呢?另外,exe文件是否具有与程序员开发的相同代码?是不是操作系统的开发方式不会从可执行文件中泄漏源代码?

【问题讨论】:

  • 可执行文件是您的机器可以解释的二进制文件。我可以用一百万种不同的方式编写一个函数,产生相同的结果,也许是相同的二进制文件。
  • 实际上,您是在问解释语言(源代码是您运行的东西)和编译语言(源代码被编译成您运行的东西)之间的区别。跨度>
  • 哦,那是奥利弗,我真的不知道这些话是什么意思。 :)

标签: exe executable


【解决方案1】:

.exe 文件由二进制数组成,二进制数由 1 和 0 组成。这些文件包含一些额外的代码,这些代码支持来自许多来源的代码。 操作系统使用二进制语言进行操作,这就是我们所说的机器码。 (从 exe 中取回代码就像从苹果汁中取回苹果);)

同时检查Compiled vs. Interpreted Languages

【讨论】:

    【解决方案2】:

    将源代码转换为exe文件的过程非常复杂。
    例如,在编译时,将源代码的语言(例如c++等)转换为机器代码。就好像你吃东西的时候,那些东西被你的胃处理后变成了粪便。因此,将 exe 文件还原为源代码是完全不可能的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-08
      相关资源
      最近更新 更多