Sdílet prostřednictvím


Jazyk MASM pro platformu x 64 (ml64.exe)

ml64.exe je assembler, který přijímá x64 Assembler.Informace o možnostech kompilátoru ml64.exe ML a ML64 příkazový řádek.

Vložené ASM není podporována pro x64.Použít vnitřní objekty serveru jazyk MASM nebo kompilátoru (x 64 vnitřní objekty serveru).

Dvě řešení jsou samostatné sestavení jazyk MASM (který plně podporuje x 64) a vnitřní objekty serveru kompilátoru.Přidali jsme velké vnitřní objekty serveru umožnit zákazníkům pomocí funkce speciální instrukce (napřprivilegovaném bit skenování na zkoušku, interlocked zakryta) v jako na platformě způsobem co nejblíže.

ml64 specifických směrnic

S ml64.exe pomocí následující direktivy:

Kromě toho PROC směrnice byla aktualizována pro použití s ml64.exe.

32Bitová adresa režimu (velikost přepsat adresu)

Jazyk MASM bude vyzařovat velikost přepsat adresu 0x67, pokud obsahuje operand paměti 32bitové registry.Velikost přepsat adresu být emitovány způsobí například následující příklady:

mov rax, QWORD PTR [ecx]
mov eax, DWORD PTR [ecx*2+r10d]
mov eax, DWORD PTR [ecx*2+r10d+0100h]
prefetch [eax]
movnti rax, QWORD PTR [r8d]

Jazyk MASM předpokládá, že pokud samostatně jako operand paměti se zobrazí 32bitové přestavění, 64bitové adresování je určen.Aktuálně nejsou podporovány pro 32bitové adresování s takovým operandy.

Nakonec míchání velikosti registru do paměti operand, jak ukazuje následující kód vygeneruje chybu.

mov eax, DWORD PTR [rcx*2+r10d]
mov eax, DWORD PTR [ecx*2+r10+0100h]

Viz také

Další zdroje

Microsoft Macro Assembler - reference