Udostępnij za pośrednictwem


.MODEL

Inicjuje model pamięci programu.

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

Parametry

  • memorymodel
    Wymagany parametr określa rozmiar wskaźników kodu i danych.

  • langtype
    Parametr opcjonalny, który ustawia Konwencji wywołującego i nazewnictwa procedur i symbole publicznych.

  • stackoption
    Parametr opcjonalny.

    stackoptionis not used if memorymodel is FLAT.

    Określanie NEARSTACK grupuje segmentu stosu w pojedynczym segmencie fizyczne (DGROUP) wraz z danymi.Rejestr segmentu stosu (SS) przyjmuje się, że ten sam adres jako rejestr segmentu danych przytrzymaj (DS).FARSTACKGrupa nie stos z DGROUP; zatem SS nie jest równa DS.

Uwagi

.MODELnie jest używany w MASM dla wersji x64 (ml64.exe).

W poniższej tabeli przedstawiono możliwe wartości dla każdego parametru, podczas określania wartości docelowej 16-bitowe i 32-bitowych platformach:

Parametr

wartości 32-bitowe

wartości 16-bitowe (obsługa starszych rozwoju 16-bitowe)

memorymodel

FLAT

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

langtype

C, STDCALL

C, BASIC, FORTRAN, PASCAL, SYSCALL, STDCALL

stackoption

Nie używane

NEARSTACK, FARSTACK

Kod

Związane z MORGÓW próbek, pobierania próbek kompilator z Visual C++ — przykłady i dokumentacji powiązanych Visual Studio 2010.

Poniższy przykład ilustruje użycie .MODEL dyrektywy.

Przykład

; 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

Zobacz też

Inne zasoby

Odwołania do dyrektyw

Visual C++ — przykłady i dokumentacji powiązanych Visual Studio 2010