Ce este o variabilă?

O variabilă este un nume pentru un loc din memoria computerului în care stocați unele date.

Imaginați-vă un depozit foarte mare, cu multe spații de depozitare, mese, rafturi, camere speciale etc. Acestea sunt toate locurile unde puteți depozita ceva. Să ne imaginăm că avem o cutie de bere în depozit. Unde este exact localizat?

Nu am spune că este depozitat 31 '2 "de la peretele de vest și 27' 8" de la peretele de nord. În termeni de programare, de asemenea, nu am spune că salariul meu total plătit în acest an este stocat în patru octeți începând cu locația 123.476.542.732 în RAM.

Date într-un computer

Computerul va plasa variabile în diferite locații de fiecare dată când este rulat programul nostru. Cu toate acestea, programul nostru știe exact unde se află datele. Facem acest lucru prin crearea unei variabile pentru a face referire la ea și apoi lăsăm compilatorul să se ocupe de toate detaliile dezordonate despre locul unde se află de fapt. Este mult mai important pentru noi să știm ce tip de date vom stoca în locație.

În depozitul nostru, lada noastră ar putea fi în secțiunea 5 a raftului 3 din zona băuturilor. În computer, programul va ști exact unde se află variabilele sale.

Variabilele sunt temporare

Există atât timp cât sunt necesare și sunt apoi eliminate. O altă analogie este că variabilele sunt ca numerele dintr-un calculator. De îndată ce apăsați butoanele de ștergere sau de oprire, numerele de afișare se pierd.

Cât de mare este o variabilă

Oricât de mare este nevoie și nu mai mult. Cea mai mică o variabilă poate fi este un bit și cea mai mare este de milioane de octeți. Procesoarele actuale gestionează datele în bucăți de 4 sau 8 octeți la un moment dat (procesoare pe 32 și 64 biți), deci cu cât este mai mare variabila, cu atât va dura mai mult pentru a o citi sau scrie. Mărimea variabilei depinde de tipul acesteia.

Ce este un tip variabil?

În limbajele de programare moderne, variabilele sunt declarate a fi de tip.

În afară de numere, CPU nu face niciun fel de distincție între datele din memoria sa. Îl tratează ca pe o colecție de octeți. Procesoarele moderne (în afară de cele din telefoanele mobile) pot gestiona, de regulă, atât aritmetica între virgulă, cât și cea cu punct flotant în hardware. Compilatorul trebuie să genereze instrucțiuni de cod de mașină diferite pentru fiecare tip, deci știind ce tip de variabilă îl ajută să genereze cod optim.

Ce tipuri de date pot păstra variabile?

Tipurile fundamentale sunt aceste patru.

  • Întregi (atât semnate cât și nesemnate) 1,2,4 sau 8 octeți în dimensiune. De obicei, denumite ints.
  • Punctul de plutire Numere cu dimensiunea de până la 8 octeți.
  • bytes. Acestea sunt organizate în 4s sau 8s (32 sau 64 biți) și sunt citite și în registrele procesorului.
  • Text șiruri, cu dimensiunea de până la miliarde de octeți. CPU au instrucțiuni speciale pentru căutarea prin blocuri mari de octeți în memorie. Acest lucru este foarte util pentru operațiunile de text.

Există, de asemenea, un tip de variabilă generală, adesea folosit în limbajele de script.

  • Variantă - Acest lucru poate reține orice tip, dar este mai lent de utilizat.

Exemplu de tipuri de date

  • Schițe de tipuri - dimensiuni unice, precum sertarele dintr-un dulap, bidimensionale, precum cutii de sortare a biroului poștal sau tridimensionale precum o grămadă de lăzi de bere. Poate fi orice număr de dimensiuni, până la limitele compilatorului.
  • Enume care sunt un subset restricționat de întregi. Citiți despre ce este un enum.
  • Structurile sunt o variabilă compusă unde mai multe variabile sunt împărțite într-o singură variabilă mare.
  • Fluxurile oferă o modalitate de gestionare a fișierelor. Sunt o formă de coardă.
  • Obiectele, sunt ca structuri, dar cu o gestionare a datelor mult mai sofisticată.

Unde sunt variabile stocate?

În memorie, dar în moduri diferite, în funcție de modul în care sunt utilizate.

  • La nivel global. Toate părțile programului pot accesa și modifica valoarea. Așa se folosesc limbi mai vechi ca Basic și Fortran pentru a gestiona date și nu este considerat un lucru bun. Limbile moderne tind să descurajeze stocarea globală, deși este încă posibil.
  • Pe morman. Acesta este numele zonei principale utilizate. În C și C ++, accesul la aceasta se face prin variabile de pointer.
  • Pe stivă. Stiva este un bloc de memorie care este utilizat pentru a stoca parametrii trecuți în funcții și variabile care există local pentru funcții.

Concluzie

Variabilele sunt esențiale pentru programarea procedurală, dar este important să nu te agăți prea mult de implementarea de bază decât dacă faci programe de sistem sau scrieți aplicații care trebuie să ruleze într-o cantitate mică de memorie RAM.

Regulile noastre privind variabilele:

  1. Cu excepția cazului în care sunteți strâns pe ram sau dacă aveți tablouri mari, rămâneți cu ints mai degrabă decât cu un octet (8 biți) sau scurt int (16 biți). În special pe procesoarele pe 32 biți, există o penalitate de întârziere suplimentară la accesarea a mai puțin de 32 biți.
  2. Folosiți plutitoare în loc de duble decât dacă aveți nevoie de precizie.
  3. Evitați variantele decât dacă este cu adevărat necesar. Sunt mai lente.