. MODEL (32 bit MASM)
Program bellek modelini başlatır. (Yalnızca 32 bit MASM.)
Sözdizimi
. MODEL bellek modeli ⟦, dil türü⟧ ⟦, stack-option⟧
Parametreler
bellek modeli
Kod ve veri işaretçilerinin boyutunu belirleyen gerekli parametre.
dil türü
Yordamlar ve ortak simgeler için çağrı ve adlandırma kurallarını ayarlayan isteğe bağlı parametre.
stack-option
İsteğe bağlı parametre.
stack-option, bellek modeli FLAT ise kullanılmaz.
NEARSTACK belirtilmesi, yığın kesimini verilerle birlikte tek bir fiziksel kesimde (DGROUP) gruplar. Yığın segmenti yazmaç (SS), veri segmenti yazmaç (DS) ile aynı adresi tuttuğu varsayılır. FARSTACK, yığını DGROUP ile gruplandırmadığından SS, DS'ye eşit değildir.
Açıklamalar
. MODEL, x64 (ml64.exe) için MASM'de kullanılmaz.
Aşağıdaki tabloda, 16 bit ve 32 bit platformları hedeflerken her parametre için olası değerler listelenmektedir:
Parametre | 32 bit değerler | 16 bit değerler (önceki 16 bit geliştirme desteği) |
---|---|---|
bellek modeli | DÜZ | KÜÇÜK, KÜÇÜK, KOMPAKT, ORTA, BÜYÜK, BÜYÜK, DÜZ |
dil türü | C, STDCALL | C, BASIC, FORTRAN, PASCAL, SYSCALL, STDCALL |
stack-option | Kullanılmıyor | NEARSTACK, FARSTACK |
Kod
MASM ile ilgili örnekler için Visual Studio 2010 için Visual C++ Örnekleri ve İlgili Belgeler'den Derleyici örneklerini indirin.
Aşağıdaki örnekte yönergesinin kullanımı gösterilmektedir .MODEL
.
Örnek
; 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