Sdílet prostřednictvím


.MODEL

Paměťový model program inicializuje.

.MODEL memorymodel [[, langtype]] [[, stackoption]]

Parametry

  • memorymodel
    Požadovaný parametr určuje velikost kódu a dat ukazatelů.

  • langtype
    Volitelný parametr, který nastaví konvence volání a pojmenování postupy a veřejné symboly.

  • stackoption
    Volitelný parametr.

    stackoptionis not used if memorymodel is FLAT.

    Zadání NEARSTACK segmentu zásobníku seskupí do jednoho segmentu fyzické (DGROUP) spolu s daty.Registr segmentu zásobníku (SS) předpokládá, že držet stejnou adresu jako registr segmentu dat (DS).FARSTACKSkupina není zásobník s DGROUP; takto SS není rovno DS.

Poznámky

.MODELnení používána v MASM pro x64 (ml64.exe).

V následující tabulce jsou uvedeny možné hodnoty pro každý parametr při cílení 16bitové a 32bitové platformy:

Parametr

32bitové hodnoty

16bitové hodnoty (podpora pro starší 16bitové rozvoj)

memorymodel

FLAT

TINY, SMALL, COMPACT, MEDIUM, LARGE, HUGE, FLAT

langtype

C, STDCALL

C, BASIC, FORTRAN, PASCAL, SYSCALL, STDCALL

stackoption

Nepoužito

NEARSTACK, FARSTACK

Kód

Jazyk MASM související vzorky stáhnout kompilátor vzorky z Visual C++ vzory a související dokumentaci pro Visual Studio 2010.

Následující příklad ukazuje použití .MODEL směrnice.

Příklad

; file simple.asm
; For x86 (32-bit), assemble with debug information: 
;   ml -c -Zi simple.asm
; For x64 (64-bit), assemble with debug information: 
;   ml64 -c -DX64 -Zi simple.asm
;
; In this sample, the 'X64' define excludes source not used 
;  when targeting the x64 architecture
 
ifndef X64
.686p
.XMM
.model flat, C
endif
 
.data
; user data
 
.code
; user code
 
fxn PROC public
  xor eax, eax ; zero function return value
  ret
fxn ENDP
 
end

Viz také

Další zdroje

Referenční dokumentace k direktivám

Visual C++ vzory a související dokumentaci pro Visual Studio 2010