Descrizione ed esempi di variabili

Una variabile è un nome per un posto nella memoria del computer in cui vengono archiviati alcuni dati.

Immagina un magazzino molto grande con molti vani portaoggetti, tavoli, scaffali, locali speciali ecc. Questi sono tutti i luoghi in cui puoi conservare qualcosa. Immaginiamo di avere una cassa di birra in magazzino. Dove si trova esattamente?

Non diremmo che è memorizzato 31 '2 "dalla parete ovest e 27' 8" dalla parete nord. Nel programmazione termini che non diremmo anche che il mio stipendio totale pagato quest'anno è memorizzato in quattro byte a partire dalla posizione 123.476.542.732 nella RAM.

Dati in un PC

Il computer posizionerà le variabili in posizioni diverse ogni volta che il nostro programma verrà eseguito. Tuttavia, il nostro programma sa esattamente dove si trovano i dati. Lo facciamo creando una variabile per fare riferimento ad essa e quindi lasciare che il compilatore gestisca tutti i dettagli disordinati su dove si trova effettivamente. Per noi è molto più importante sapere che tipo di dati verranno archiviati nella posizione.

instagram viewer

Nel nostro magazzino, la nostra cassa potrebbe trovarsi nella sezione 5 dello scaffale 3 nell'area delle bevande. Nel PC, il programma saprà esattamente dove si trovano le sue variabili.

Le variabili sono temporanee

Esistono fino a quando sono necessari e vengono quindi eliminati. Un'altra analogia è che le variabili sono come numeri in una calcolatrice. Non appena si premono i pulsanti di cancellazione o spegnimento, i numeri del display vengono persi.

Quanto è grande una variabile

Grande quanto serve e non di più. Il più piccolo che una variabile può essere è un bit e il più grande è milioni di byte. I processori attuali gestiscono i dati in blocchi di 4 o 8 byte alla volta (CPU a 32 e 64 bit), quindi più grande è la variabile, più tempo ci vorrà per leggerla o scriverla. La dimensione della variabile dipende dal suo tipo.

Che cos'è un tipo di variabile?

Nel moderno linguaggi di programmazione, le variabili vengono dichiarate di un tipo.

A parte i numeri, la CPU non fa alcun tipo di distinzione tra i dati nella sua memoria. Lo tratta come una raccolta di byte. Le CPU moderne (a parte quelle dei telefoni cellulari) in genere sono in grado di gestire sia l'aritmetica a numero intero che a virgola mobile nell'hardware. Il compilatore deve generare diverse istruzioni per il codice macchina per ogni tipo, quindi sapere quale tipo di variabile aiuta a generare un codice ottimale.

Quali tipi di dati può contenere una variabile?

I tipi fondamentali sono questi quattro.

  • Interi (sia con segno che senza segno) di dimensioni 1,2,4 o 8 byte. Di solito indicato come ints.
  • Virgola mobile Numeri fino a 8 byte di dimensione.
  • byte. Questi sono organizzati in 4 o 8 secondi (32 o 64 bit) e letti dentro e fuori dai registri della CPU.
  • Testo stringhe, fino a miliardi di byte di dimensioni. Le CPU hanno istruzioni speciali per la ricerca attraverso blocchi di byte di grandi dimensioni in memoria. Questo è molto utile per le operazioni di testo.

Esiste anche un tipo di variabile generale, spesso utilizzato nei linguaggi di scripting.

  • Variante - Può contenere qualsiasi tipo ma è più lento da usare.

Esempio di tipi di dati

  • Matrici di tipi: dimensioni singole come cassetti in un armadio, bidimensionali come scatole di smistamento degli uffici postali o tridimensionali come una pila di casse di birra. Può esserci un numero qualsiasi di dimensioni, fino ai limiti del compilatore.
  • Enum che sono un sottoinsieme limitato di numeri interi. Leggi cos'è un enum.
  • Le strutture sono una variabile composita in cui diverse variabili sono raggruppate insieme in una grande variabile.
  • I flussi forniscono un modo per gestire i file. Sono una forma di a corda.
  • Oggetti, sono come strutture ma con una gestione dei dati molto più sofisticata.

Dove vengono memorizzate le variabili?

In memoria ma in modi diversi, a seconda di come vengono utilizzati.

  • A livello globale. Tutte le parti del programma possono accedere e modificare il valore. Questo è il modo in cui linguaggi più vecchi come Basic e Fortran gestivano i dati e non sono considerati una buona cosa. Le lingue moderne tendono a scoraggiare l'archiviazione globale, sebbene sia ancora possibile.
  • Sul mucchio. Questo è il nome dell'area principale utilizzata. In C e C ++, l'accesso a questo avviene tramite pointer variabili.
  • Sul Pila. Lo stack è un blocco di memoria utilizzato per l'archiviazione parametri passato a funzioni e variabili esistenti a livello locale.

Conclusione

Le variabili sono essenziali per la programmazione procedurale, ma è importante non rimanere troppo bloccati sul sottostante implementazione a meno che non si stia programmando sistemi o scrivendo applicazioni che devono essere eseguite in una piccola quantità di RAM.

Le nostre regole relative alle variabili:

  1. A meno che tu non sia stretto su ram o abbia matrici di grandi dimensioni, attenersi int piuttosto che a byte (8 bit) o breve int (16 bit). Soprattutto su CPU a 32 bit, vi è una penalità di ritardo aggiuntiva nell'accesso a meno di 32 bit.
  2. Uso galleggianti invece di doppio a meno che tu non abbia bisogno della precisione.
  3. Evita le varianti se non veramente necessarie. Sono più lenti