.COM和.EXE之间的区别

我有一篇文章说, .COM文件比.EXE文件更适合小应用程序。 什么是.COM文件? 我们如何创建.COM文件? 它们如何比.EXE文件更好? 我还想知道.COM文件是否仍然被广泛使用?

有什么建议。

这篇文章来自1985年吗? COM文件已经很久了,因为它们只是DOS,可能只有64 KiB大而且还有许多其他问题。

它们曾经是一种比EXE更简单的格式,因为你可以在debug.exe或汇编程序中用几行创建一个有效的com可执行文件。 我在这里有点怀旧……

COM文件很棒,因为您可以将可执行文件神奇地转换为文本文件。 EXE文件总是有一个MZ头,而COM没有。 由于您可以在x86 arch中动态生成代码,因此可以使用可打印字符中的操作码生成二进制操作码。

这是一个例子,程序README.COM:

 P5CQ5sPP[X5iK4iH4]P_1?CC5IQ5CBP_1?SX4v4pPZ5iH5i@okey Text2COM example by 谢继雷 (Lenik). $ 

在此示例中,引导操作码生成DOS INT 21H中断以显示以’$’结尾的字符串。

一些旧的编译器可能有一些选项来支持.COM文件,但由于它是16位可执行文件,它们多年来一直没有得到支持。