64-Bit-Windows-Assembler

8

Ich möchte 64-Bit-Windows-Assembly programmieren (vorzugsweise mit NASM). Ich habe schon ziemlich auf Google geschaut, aber es scheint, dass ich keinen 64-Bit-Windows-Compiler finden kann. Auf einigen Seiten wurde ml64 erwähnt, aber es scheint, als wäre es nicht mehr in VC ++ enthalten. Ich habe es mit 32-Bit-Assembly versucht, aber offensichtlich stürzt es einfach auf meinem 64-Bit-Rechner ab. Können 32-Bit-Assembly-Anwendungen auf einer 64-Bit-Windows-Maschine geschrieben, kompiliert und ausgeführt werden? Oder sollte es für 64 Bits geschrieben und kompiliert werden?

Danke.

    
Jayson Kane 22.05.2012, 19:10
quelle

2 Antworten

6

Yasm (*) ist ein moderner Multi-Plattform NASM-rewritten Assembler, der in der Lage ist, sowohl x86- als auch AMD64 / x86-64-Befehlssätze zu erstellen.

Allerdings ... Was Sie wahrscheinlich meinen, ist, dass Sie einen Linker benötigen, um den zusammengesetzten Objektcode / die Dateien zu verknüpfen, um eine ausführbare Datei zu erstellen. Zumindest das vollständig freie MinGW (Minimal GNU für Windows) -Projektpaket wird mit einem Linker (genannt ld) geliefert, der sowohl ausführbare 32- als auch 64-Bit-Windows-Dateien aus Objektdateien (mindestens ELF- und PE-Objektformat) zusammenstellen kann. p>

Sie können 32-Bit-Projekte in einer 64-Bit-Umgebung und umgekehrt kompilieren / erstellen, vorausgesetzt, dass Sie dem Assembler und dem Linker korrekte Befehlszeilenparameter bereitstellen. Genauere Informationen finden Sie in der Dokumentation der Tools Ihrer Wahl.

*) Ссылка

    
zxcdw 23.05.2012, 02:40
quelle
3

Es ist möglich, eine 32-Bit-Assembly unter 64-Bit-Windows zu schreiben, zu assemblieren und auszuführen. Ich habe auf meinem Windows 7 x64-Rechner einige Utilities in masm32 geschrieben. Wenn Sie 64-Bit-Code zusammenstellen möchten, unterstützt FASM 64-Bit-Objektcode.

    
Brian Knoblauch 22.05.2012 19:48
quelle