SEGMENT

Definisce un segmento di programma denominato nome con attributi di segmento

Sintassi

name SEGMENT ⟦READONLY⟧ ⟦align⟧ ⟦combine⟧ ⟦use⟧ ⟦characteristicsALIAS(string)'class'⟧
Dichiarazioni
nome ENDS

Parametri

align
Intervallo di indirizzi di memoria da cui è possibile selezionare un indirizzo iniziale per il segmento. Il tipo di allineamento può essere uno dei seguenti:

Allinea tipo Indirizzo iniziale
BYTE Indirizzo di byte successivo disponibile.
WORD Indirizzo parola successivo disponibile (2 byte per parola).
DWORD Indirizzo di parola doppia disponibile successivo (4 byte per parola doppia).
PARA Indirizzo di paragrafo successivo disponibile (16 byte per paragrafo).
PAGE Indirizzo di pagina disponibile successivo (256 byte per pagina).
ALIGN(n) Successivo indirizzo nbyte disponibile. Per altre informazioni, vedere la sezione Osservazioni.

Se questo parametro non è specificato, para viene utilizzato per impostazione predefinita.

combine (solo MASM a 32 bit)
PUBLIC, STACK, COMMON, MEMORY, ATaddress, PRIVATE

use (solo MASM a 32 bit)
USE16, USE32, FLAT

Caratteristiche
INFO, READ, WRITE, EXECUTE, SHARED, NOPAGE, NOCACHE e DISCARD

Questi sono supportati solo per COFF e corrispondono alle caratteristiche della sezione COFF di un nome simile (ad esempio, SHARED corrisponde a IMAGE_SCN_MEM_SHARED). READ imposta il flag di IMAGE_SCN_MEM_READ. Il flag READONLY obsoleto ha causato la cancellazione del flag di IMG_SCN_MEM_WRITE. Se vengono impostate caratteristiche, le caratteristiche predefinite non vengono usate e vengono applicati solo i flag specificati dal programmatore.If any characteristics are set, the default characteristics are not used and only the programmer-specified flags are in effect.

string
Questa stringa viene utilizzata come nome di sezione nell'oggetto COFF generato. Crea più sezioni con lo stesso nome esterno, con nomi di segmento MASM distinti.

Non supportato con /omf.

class
Definisce il modo in cui i segmenti devono essere combinati e ordinati nel file assemblato. I valori tipici sono, 'DATA', 'CONST' 'CODE'e'STACK'

Osservazioni:

Per ALIGN(n), n può essere una potenza di 2 da 1 a 8192; non supportata con /omf.

Vedi anche

Riferimento alle direttive
Grammatica BNF MASM