当我脑海中出现一个有趣的(可能是愚蠢的)场景时,我正在研究程序和操作系统是如何工作的。如果执行文本文件会发生什么?我做的是,我创建了一个文本文件,其中包含" hello"在其中,然后将文件保存为可执行文件。
当我运行它时,Windows说它无法打开这种类型的文件。发生了什么事?
不应该是"你好"被改成二进制并执行虽然随机指令?
感谢您清除我对exe如何运作的误解。
答案 0 :(得分:2)
答案 1 :(得分:0)
只是保存为可执行文件会转换为二进制文件。 你需要一个编译器。 如果您对编程感兴趣,我建议您查看有关java,android,iOS,C#或任何数字语言的YouTube教程。大多数好的人都会开始教你如何去获取免费软件,以任何你想要的语言开始开发。
答案 2 :(得分:0)
执行过程涉及许多步骤。当您执行可执行文件时,程序加载程序会读取文件中的描述符以获取动态链接/共享库/ DLL,以确定所有需要加载的内容。它需要将存储器的描述符赋予加载器必须设置的实际存储器(例如,程序通常包括只读存储器,读执行存储器和读写存储器)。加载器必须解析可重定位的地址。它必须创建一个堆栈。
完成所有设置后,它会运行您的程序。
如果您只是给它一个文本文件,那么加载程序找不到设置程序所需的数据strutters而只是呕吐。
在某些系统(通常是嵌入式)上,可执行文件只是内存的一个映像。这不是您可能使用的典型交互式系统的情况。