Integer (tipus de dada)

De Viquipèdia
Dreceres ràpides: navegació, cerca

Un tipus de dada sencer en informàtica és un tipus de dada que pot representar un subconjunt finit dels nombres enters. El nombre més gran que pot representar depèn de la grandària de l'espai usat per la dada i la possibilitat (o no) de representar nombres negatius. Els tipus de dada sencer disponibles i la seva grandària depenen del llenguatge de programació usat així com l'arquitectura en qüestió. Per exemple, si per emmagatzemar un nombre enter disposem de 4 bytes de memòria es té que:

4 Bytes = 4x8 = 32 bits
Amb 32 bits es poden representar 232 = 4294967296 valors:
* Només positius (sencers sense signe): del 0 al 4294967295
* Positius i negatius (sencers amb signe): del -2147483648 al 2147483647

Operacions amb enters[modifica | modifica el codi]

Les típiques operacions aritmètiques: suma, resta, multiplicació i divisió es poden realitzar amb dades de tipus sencer. En el cas de la divisió, el resultat podria ser un valor real, en aquest cas, si el resultat s'ha d'emmagatzemar com sencer la part decimal del resultat haurà de ser eliminada, en principi hi ha dos mètodes per fer-ho:

  • L'arrodoniment: Aproximar el valor real a l'enter més proper (Ex: 3,8 → 4 i 3,2 → 3)
  • El truncament: Elimina del valor real la part decimal (Ex: 3,8 → 3 i 3,2 → 3)

Una altra operació important que es pot fer amb números sencers és l'operació de mòdul o resta de la divisió entera, és a dir:

184 dividit 3 = 61 (resta 1) → 184 mòdul 3 = 1

En general l'operació mòdul compleix que:

A mod b = c
*C ≥ 0
*C <b
* Si c és igual a 0 → a és múltiple de b
* Si c és igual a 0 i b és igual a 2 → a (És parell)

El desbordament (overflow)[modifica | modifica el codi]

Quan operant amb nombre sencers en un programa d'ordinador ocorre que s'intenta assignar a un valor sencer un valor que està fora del rang dels valors que es poden representar (Ex: a = 240) es produeix una sentència que es coneix amb el nom de desbordament (overflow a anglès). Quan això passa l'habitual és que el programa segueixi funcionant com si res hagués passat, però el valor desbordat s'haurà convertit en un valor indeterminat amb el qual les operacions posteriors en què aquest valor intervingui produiran resultats incorrectes.

Vegeu també[modifica | modifica el codi]