【发布时间】:2010-09-01 17:35:52
【问题描述】:
不久前我决定开始学习汇编,所以我从 16 位汇编开始,使用 FASMW。 然而,我最近得到了一台运行 Windows 7 64 位的真正新计算机,现在程序组装的已编译 .COM 文件不再工作了。他们给出一条错误消息,指出 .COM 与 64 位 Windows 不兼容。 32 位程序集仍然可以工作,但我宁愿从 16 位开始,然后逐步提高... 是否可以在 Windows 7 上运行 16 位程序?还是有特定的方法来编译它们?还是我应该放弃并改为跳到 32 位?
【问题讨论】:
-
您始终可以为您的目标环境运行虚拟机。
-
程序集是 处理器 特定的。你用的是什么处理器?你用的是什么处理器?
-
像 Windows Virtual PC 这样的虚拟机。但是这个问题无论如何都是误导,因为没有从 16 位开始。 64 位模式要简单得多,并且与 32 位模式足够相似,因此您也不需要专门学习后者。更多位!= 更难
-
相关:How to write hello world in assembler under Windows? 在 kernel32.dll 中调用 WinAPI 函数的 32 位示例
标签: windows assembly x86-64 x86-16 incompatibility