# Tipus de dada

Tipus de dada és un atribut d'una part de les dades que indica a l'ordinador (i/o al programador) quelcom sobre la classe de dades sobre els que es va a processar. Això inclou imposar restriccions en les dades, com quins valors poden prendre i quines operacions es poden realitzar. Tipus de dada comuns són: enters, nombres de coma flotant (decimals), cadenes alfanumèriques, dates, hores, colors, cotxes o qualsevol cosa que se'ns ocorri. Per exemple, en el tipus "int" representa un conjunt d'enters de 32 bits el rang va des del -2.147.483.648 al 2.147.483.647, així com les operacions que es poden realitzar amb els enters, com la suma, resta i multiplicació. Els colors, d'altra banda, es representen com tres bytes denotant la quantitat de vermell, verd i blau, i una cadena de caràcters representant el nom del color, les operacions permeses inclouen l'addició i sostracció, però no la multiplicació.

## Concepte

Aquest és un concepte propi de la informàtica, més específicament dels llenguatges de programació, encara que també es troba relacionat amb nocions similars de les matemàtiques i la lògica.
En un sentit ampli, un Tipus de dada defineix un conjunt de valors i les operacions sobre aquests valors. Gairebé tots els llenguatges de programació explícitament inclouen la notació del Tipus de dades, encara que llenguatges diferents poden usar terminologia diferent. La major part dels llenguatges de programació permeten al programador definir tipus de dades addicionals, normalment combinant múltiples elements d'altres tipus i definint les operacions del nou Tipus de dada. Per exemple, un programador pot crear un nou Tipus de dada anomenat "Persona" que especifica que la dada interpretat com a Persona inclourà un nom i una data de naixement.
Un Tipus de dada pot ser també vist com una limitació imposada en la interpretació de les dades en un sistema de tipificació, descrivint la representació, interpretació i l'estructura dels valors o objectes emmagatzemats en la memòria de l'ordinador. El sistema de tipificació usa informació dels tipus de dades per comprovar la verificació dels programes que accedeixen o manipulen les dades.

## Classes de tipus de dada
### Tipus de dada màquina

Totes les dades en els ordinadors basats en l'electrònica digital es representen com bits (valors 0 i 1) en el nivell més baix. La més petita unitat adreçable de dades és un grup de bits anomenat un byte (normalment un octet, que són 8 bits). La unitat processada per les instruccions del codi màquina se'n diu una paraula (el 2006, normalment 32 o 64 bits). La major part de les instruccions interpreten la paraula com un nombre binari, com ara una paraula de 32 bits pot representar valors integers sense signe des del 0 al $2^{32}-1$ o valors integers amb signe des $-2^{31}$ a $2^{31}-1$. Mitjançant el complement a dos, la major part del temps, el llenguatge màquina i la pròpia màquina no necessiten distingir entre tipus de dades amb signe o sense.

### Tipus de dada primitius

Els tipus de dades fan referència al tipus d'informació que es treballa, on la unitat mínima d'emmagatzematge és la dada, també es pot considerar com el rang de valors que pot prendre una variable durant l'execució del programa.

#### Tipus de dada primitius

* CARÀCTER
* NUMÈRIC
* LÒGICS (booleans)

#### CARÀCTER

El Tipus de dada char és un dígit individual el qual es pot representar com numèrics (0 al 9), lletres (az) i símbol ($, _). NOTA: En llenguatge java la codificació Unicode permet treballar amb tots els caràcters de diferents idiomes.

#### NUMÈRICS

Aquest Tipus de dada pot ser enter o real, depenent del tipus de dada que s'hagi d'utilitzar.

#### Enters

són els valors que no tenen punt decimal, poden ser positius o negatius i el zero.

#### Reals

aquests caràcters s'emmagatzemen nombres molt grans que posseeixen part entera i part decimal.

#### Booleans

Aquest Tipus de dada s'empra per a valors lògics, els podem definir com dades comparatives aquesta comparació retorna resultats lògics.

### Tipus simples

* Ordinal (tipus de dada)
** Tipus de dada predefinits
*** Integer (tipus de dada)
*** Char (tipus de dada)
*** Logic (tipus de dada)
** Tipus de dada definits per l'usuari
*** Enumerat (tipus de dada)
*** Subrang (tipus de dada)
* Tipus de dada) no ordinals
** Real (tipus de dada)
** Cronològic (tipus de dada)
** Punter (tipus de dada)

### Tipus funció
## Referències

* ↑ «What is data type? - Definition from WhatIs.com» (en anglès). SearchMicroservices, 14-05-2017. Arxivat de l'original el 2017-05-14 [Consulta: 14 maig 2017].
* ↑ «What is data type?» (en anglès). www.computerhope.com, 14-05-2017.
* ↑ «Language: Data types: Data type syntax — Documentation — Puppet» (en anglès). docs.puppet.com/puppet. Arxivat de l'original el 2017-09-16. [Consulta: 14 maig 2017].
* ↑ http://www.sigcse.org/cc2001/PL.html Arxivat 2009-03-03 a Wayback Machine.
* Luca Cardelli, Peter Wegner. On Understanding Types, Data Abstraction, and Polymorphism, from Computing Surveys, (December, 1985)

## Vegeu també

* Variable (programació)
* Diccionari de dades