Datu mota osoa

Datu mota osoa (integer bezala ezagutzen dena), konputazioan, zenbaki osoen azpimultzo finitoa adierazi dezaken datu mota da. Adierazi dezaken zenbakirik altuena datuak erabiltzen den lekuaren araberakoa da, eta zenbaki negatiboak adieraztea posiblitatearena. Erabil ditzakegun datu mota osoak eta haien tamaina lengoairen eta arkitekturaren araberakoak dira. Adibidez, zenbaki osoak gordetzeko memorian 4 byte baditugu:
 4 Byte = 4x8 = 32 bit
 32 bitekin 232=4294967296 balore adieraz daitezke:
 Positiboak bakarrik (osoak zeinurik gabe): 0tik 4294967295ra
 Positibo eta negatiboak (osoak zeinuarekin): -2147483648tik 2147483647ra

Eragiketak zenbaki osoekin 
Datu mota osoekin ohiko aritmetika eragiketak egin daitezke: batuketa, kenketa, biderketa eta zatiketa. Zatiketaren kasuan, emaitza balore erreal bat izan daiteke eta ez du zertan zenbaki osoa izan. Kasua hori bada, eta emaitza datu mota oso bezala adierazi behar denez, atal hamartarra ezabatu beharko zaio. Bi metodo daude hau burutzeko:
 Biribiltzea: Zenbaki oso gertuenera hurbilduz (Adibidez: 3,8 --> 4 / 3,2 --> 3)
 Trunkatzea: Atal hamartarra kenduz (Adibidez: 3,8 --> 3 / 3,2 --> 3)
Datu mota osoekin egin daitekeen beste eragiketa ez ohiko bat, modulua izango litzateke, zatiketa oso baten hondarra:
184 zati 3 = 61 (hondarra 1) --> 184 modulu 3 = 1
Modulu eragiketak honako propietate hauek betetzen ditu:
a mod b = c
 c ≥ 0
 c < b
 c, 0 bada --> a, b-ren multiploa da
 c, 0 bada eta b berdin 2n (n 0 baino handiago edo txikiago den zenbaki osoa izanda) --> a (Bikoitia da)

Gainezkatzea (overflow) 
Ordenagailu programa batek datu mota oso bati esleitu ez daiteken balorea esleitzen badio, eremuaren muga gainditzen duelako ( a=240 adibidez), gainezkatzea deritzon errorea agertuko da (overflow ingelesez). Hau gertatzen denean, normalean programak funtzionatzen jarraitzen du, baina baloreak 0 balioa hartuko du. Zenbaki negatibo bat datu mota oso positibo bati esleitzen bazaio, hau positibo bihurtuko da.

Ikus, gainera 
 Datu mota

Kanpo estekak 

Programazioa