Kuidas muutujaid salvestatakse?
Kuidas muutujaid salvestatakse?

Video: Kuidas muutujaid salvestatakse?

Video: Kuidas muutujaid salvestatakse?
Video: Kuidas toetada lapse vaimset tervist? Ingvar Villido, Rita Rätsepp | Einstein3000 #5 2024, Mai
Anonim

Muutujad on tavaliselt ladustatud RAM-is. ise järgib tavaliselt ülaltoodud reegleid (funktsioonis deklareeritud osuti on ladustatud pinus), kuid andmed, millele see osutab (mäluplokk ise või objekt, mille lõite uuega), on ladustatud kuhja peal.

Samamoodi võib küsida, kus on muutujad salvestatud?

Kõik globaalsed ja staatilised muutujad salvestatakse andmesegmenti, konstandid aga koodisegmenti. Globaalsed muutujad võivad asuda paaris kohas, olenevalt sellest, kuidas need on seadistatud näide , const globals võivad olla käivitatava faili kirjutuskaitstud jaotises.

Samuti, kuidas muutujaid Javas salvestatakse? Kõik objektid sisse Java on ladustatud kuhja peal. " muutujad " mis sisaldavad neile viiteid, võivad asuda virnas või sisalduda teistes objektides (siis pole need tegelikult olemas muutujad , vaid väljad), mis paneb need ka hunnikusse. Jaotis Heap sisaldab objekte (võib sisaldada ka viiteid muutujad ).

Küsimus on ka selles, kuidas muutujaid mällu salvestatakse?

The mälu pesa a muutuja salvestatakse kas virna või kuhja peal. See sõltub kontekstist, milles see on deklareeritud: Iga kohalik muutuv (st meetodis deklareeritud) on ladustatud virna peal. Iga staatiline muutuja salvestatakse kuhjas, olenemata sellest, kas see on deklareeritud viitetüübi või väärtuse tüübi sees.

Kuidas kohalikke muutujaid virna salvestatakse?

Kohalike muutujate salvestamine peal virna on juurutamise detail – põhimõtteliselt optimeerimine. Võite seda mõelda nii. Funktsiooni sisestamisel ruumi kõigile kohalikud muutujad on kuhugi eraldatud. See on kontrastiks muutujad hunnikule eraldatud, mille aadressid on nemad ladustatud muus muutujad.

Soovitan: