Assembly 如何在Win 7 cygwin 64上运行这些汇编程序

Assembly 如何在Win 7 cygwin 64上运行这些汇编程序,assembly,windows-7,cygwin,nasm,Assembly,Windows 7,Cygwin,Nasm,我有一个Windows7 64位,我安装了nasm、cygwin64并设置了路径变量。我去了paulcarter博士的汇编语言教程,下载了他的示例程序cygwin。我打开cygwin,转到示例程序所在的目录,并执行以下指令 $nasm -f win32 array1.asm -o array1.o 我被带回命令提示符 我在这里写道 $ ld -m elf_i386 -s -o array1 array1.o 我得到了这个 "ld: unrecognised emulation mode: e

我有一个Windows7 64位,我安装了nasm、cygwin64并设置了路径变量。我去了paulcarter博士的汇编语言教程,下载了他的示例程序cygwin。我打开cygwin,转到示例程序所在的目录,并执行以下指令

$nasm -f win32 array1.asm -o array1.o
我被带回命令提示符 我在这里写道

$ ld -m elf_i386 -s -o array1 array1.o
我得到了这个

"ld: unrecognised emulation mode: elf_i386
Supported emulations: i386pep i386pe"

我怎样才能使这些程序和以后我自己的程序正常工作?

elf适用于Linux。对于Windows,请尝试其他模式之一。其他模式是什么?你能推荐一下吗?我需要一条特定的命令,因为错误消息表明:i386pep或i386pe而不是elf_i386。pe代表Windows的pe格式。如果目标是生成64位程序,我想知道如何使用386的参数。另一种方法是使用免费的Visual Studio Express,使用ml64.exe需要在项目中使用自定义生成步骤。@rcgldr:没有一个示例适用于64位模式。因此,即使在64位操作系统上,也必须构建32位可执行文件。