tipo di dati

Article

August 17, 2022

Nei sistemi di tipi di programmazione, i tipi di dati, noti anche come tipi di dati e tipi di dati, vengono utilizzati per vincolare l'interpretazione dei dati. Nei linguaggi di programmazione, i tipi di dati comuni includono tipi primitivi (come numeri interi, numeri a virgola mobile o caratteri), tuple, unità di record, tipi di dati algebrici, tipi di dati astratti, tipi di riferimento, classi e tipi di funzione. I tipi di dati descrivono la rappresentazione, l'interpretazione e la struttura dei valori numerici e sono manipolati da algoritmi o aree di archiviazione di oggetti in memoria o altri dispositivi di archiviazione.

Tipo di dati nella macchina

Tutti i dati sottostanti in un computer, basato sull'elettronica digitale, sono rappresentati in bit (0 o 1). L'unità di indirizzamento più piccola dei dati è chiamata gruppo di byte (di solito ottetti, in gruppi di otto bit). L'unità di elaborazione delle istruzioni del codice macchina è chiamata lunghezza della parola (fino al 2007, generalmente 32 o 64 bit).La maggior parte delle istruzioni della lunghezza della parola sono interpretate, principalmente in binario, come una lunghezza della parola di 32 bit, può rappresentare da 0 a 2 32 − 1 {\displaystyle 2^{32}-1} il valore intero senza segno di o la rappresentazione da − 2 31 {\displaystyle -2^{31}} a 2 31 − 1 {\displaystyle 2^{31}-1} Il valore intero con segno di . Con il complemento a due, i linguaggi macchina e le macchine per lo più non hanno bisogno di distinguere tra tipi di dati senza segno e con segno. Esistono speciali istruzioni aritmetiche che utilizzano una diversa interpretazione dei bit nella lunghezza della parola come numeri in virgola mobile.

Tipo di dati non elaborati

I linguaggi di programmazione forniscono una serie di tipi di dati primitivi su cui costruire programmi e tipi compositi specializzati. Tipi di dati primitivi tipici includono vari tipi interi, a virgola mobile e stringa. Sebbene questi elementi costitutivi: matrici, celle di record e riferimenti a dati collegati possano non essere inclusi nel tipo di base, possono comunque essere visti come una raccolta di valori primitivi.

Tipo composto

Questa parte può includere quanto segue (alla fine dipende ancora dal linguaggio di programmazione): RECORD Un insieme di tipi di variabili, ad esempio: una riga nella tabella del database TABLE Campo dell'indice nel database NESTED TABLE Un array unidimensionale di qualsiasi tipo composto singolo VARRAY Un insieme di variabili dello stesso tipo e una dimensione fissa

Intervallo di valori

Ciascun tipo di dati ha un valore numerico massimo e minimo, chiamato intervallo numerico. È importante conoscere l'intervallo di valori, soprattutto quando si utilizzano tipi più piccoli, è possibile memorizzare solo valori all'interno dell'intervallo. Il tentativo di memorizzare un valore al di fuori del suo intervallo può causare un errore di compilazione o di esecuzione o un risultato di calcolo errato (a causa del troncamento). L'intervallo di una variabile si basa sul numero di byte utilizzati per contenere il valore e il tipo di dati intero è generalmente in grado di memorizzare 2 n {\displaystyle 2^{n}} valore (qui n {\ displaystyle n} si riferisce a bit). Per altri tipi di dati (ad es. numeri in virgola mobile), l'intervallo di valori è più complesso e dipende quasi dal metodo di archiviazione utilizzato. Ci sono anche alcuni bit che non li utilizzano tutti, ad esempio Boolean ha bisogno di un solo bit e rappresenta un valore binario (sebbene in pratica i restanti 7 bit siano solitamente esauriti). Alcuni linguaggi di programmazione consentono anche la determinazione inversa, in cui il programmatore definisce l'intervallo e la precisione necessari per risolvere il problema e il compilatore seleziona automaticamente il numero intero o in virgola mobile appropriato. La tabella seguente elenca i tipi di dati comuni e i relativi intervalli di valori:

Struttura dei dati

tipi astratti

Commenti

Riferimenti

Luca Cardelli, Peter Wegner, On Understanding Types, Data Abstraction, and Polymorphism, [1] (archivio sul retro, su Internet Archive) da Computing Surveys (dicembre 1985).

vedi

Teoria dei tipi, un modello matematico dei tipi. Sistema di tipi, sulla differenza nella scelta tra i tipi di linguaggio di programmazione.