Memoria dinamica

Operatore Sintassi Descrizione
@
Addr
Addr(x): pointer; Restituisce l’indirizzo dell’oggetto specificato
Seg Seg(x): Word; Restituisce il segmento dell’oggetto specificato
Ofs Ofs(x): Word; Restituisce l’offset dell’oggetto specificato
Ptr Ptr(Seg, Ofs: Word): pointer; Trasforma una base di segmento e un indirizzo di segmento in un valore per un puntatore
Cseg CSeg: Word; Restituisce il valore attuale del registro CS
Dseg DSeg: Word; Restituisce il valore attuale del registro DS
Sseg SSeg: Word; Restituisce il valore attuale del registro SS
SPtr SPtr: Word; Restituisce il valore attuale del registro SP

Operatore Sintassi Descrizione
MemAvail MemAvail: Longint; Restituisce la dimensione totale di tutti i blocchi di memoria dinamica disponibili
MaxAvail MaxAvail: Longint; Restituisce la dimensione del singolo blocco di memoria dinamica piĆ¹ grande, disponibile per essere allocato

Operatore Sintassi Descrizione
New New(var p: pointer); Crea una variabile di memoria dinamica
Dispose Dispose(var p: pointer); Libera una variabile di memoria dinamica

Operatore Sintassi Descrizione
GetMem GetMem(var p: pointer; size: Word); Crea un blocco di memoria dinamica della misura specificata e assegna l’indirizzo alla variabile
FreeMem FreeMem(var p: pointer; size: Word); Libera il blocco di memoria della dimensione e posizione specificata

Operatore Sintassi Descrizione
Mark Mark(var p: pointer); Registra lo stato dell’heap utilizzando una variabile puntatore
Release Release(var p: pointer); Riporta l’heap alla situzione registrata nel puntatore