Byte

**Byte** bat (**B** ikurraz adierazten dena) ordenagailuetan datuak gordetzeko erabili ohi den unitatea da, gordetzen duen datu motarekiko independentea. Normalean 8 bitek osatutako multzoa izaten da, kasu hauetan **zortzikote** ere deitzen da.

Byte bat ordenagailu batek lan egin dezakeen informazio neurri txikiena da. Batez ere biltegiratze sistema batek duen gaitasuna adierazteko erabiltzen da. 2 bytek osatutako multzoari **hitz** deritzo (ingelesez, *word*), eta 4 bytek osatutakoari **hitz bikoitz** (ingelesez, *double word*).

Byte baten tamaina hardwarearen menpe egon da historikoki, eta azken hamarkadak arte ez da behin betiko estandarrik egon. 1 eta 48 bit arteko tamainak erabili izan dira byte bat definitzeko, IBM Stretch konputagailu diseinu fasean. Konputagailu honek helbideratze luzera aldakorra zuen, aginduan beran bytearen tamainarekin. Ingelesezko *bite* hitzaren nahitaezko berridazketa da, bit hitzarekin ez nahasteko.

1960aren hasieran, AT&Tk telefonia digitala sartu zuen distantzia luzeko enborreko lineetan. Horiek 8 biteko μ-law kodetzea erabili zuten. Inbertsio handi horrek 8 biteko datu-transmisioaren kostuak murrizteko konpromisoa hartu zuen.

## Byte ugariko unitateak 
Sistema bat baino gehiago dago bytean oinarritutako unitate multiploak definitzeko. Sistema batzuk 10en berreketetan oinarritzen dira, Nazioarteko Unitate Sistemari (SI) jarraituz. Sistema horrek, adibidez, 'kilo 'aurrizkia 1000 (103) bezala definitzen du; beste sistema batzuk 2ren berreketetan oinarritzen dira. Sistema hauen nomenklaturak nahasmena du. 10en berreketetan oinarritutako sistemak, SI aurrizki estandarrak (kilo, mega, giga,...) eta dagozkien sinboloak (k, M, G...) erabiltzen dituzte. Hala ere, 2ren berreketetan oinarritutako sistemek aurrizki bitarrak (kibi, mebi, gibi,...) eta dagozkien sinboloak (Ki, Mi, Gi...) erabil ditzakete edo K, M eta G aurrizkiak erabil ditzakete, anbiguotasuna sortuz M edo G aurrizkiak erabiltzen direnean.

### Definizioen arteko gatazkak 
Memoriak arkitektura bitarra du, eta memoria unitateak definitzea 2ren berreketetan oinarritzea praktikoagoa da. Multiplo bitarretarako 'kilo' aurrezenbakia erabiltzea komenigarritzat jo zen, 1.024 (210) gutxi gorabehera 1.000 baita. Definizio hori oso erabilia izan zen informatika pertsonalaren lehen hamarkadetan, adibidez 368,640 byteko Tandon biltegiratzeko gailu bat "360 KB" gisa iragartzen zen, 1024-byte konbentzioa segituz. Baina ez zen konbentzio unibertsal bat, 1000-byteko konbentzioa ere erabiltzen zen, adibidez, 109,375 byteko Shugart SA-400 diskete bat '110 Kbyte' gisa iragarriz. Bien arteko konbinazioak erabiliz ere iragartzen ziren diskete ezberdinak, benetako biltegiratze ahalmena ez zehaztuz.
thumb|Interpretazio hamartarren eta bitarren arteko diferentzia, ehunekotan

Unitate hauek estandarizatu gabe egoteak anbiguotasun handia sor lezake gailuen benetako biltegiratze ahalmenarekiko, eta iragarki engainagarriak ekarri ahal ditu. Unitate hamartar eta bitarren arteko ezberdintasuna handitzen doa kapazidadea handitzen doan bitartean. 

1995ean, Kimika Puruaren eta Aplikatuaren Nazioarteko Batasuneko Nomenklatura eta Sinboloen Sail arteko Batzordea (IUPAC) anbiguotasun hori konpontzen saiatu zen aurrizki bitarren multzo bat proposatuz, 1024-ren berreturak erabiliz. Hauek 'kibi'(210 byte ), 'mebi'(220 byte) eta 'gibi' (230)byte aurrizkiak barneratzen ditu.

1998ko abenduan, IUPACek proposatutako aurrezenbakiak erabiliz (kibi, mebi, gibi eta abar) aukeratu NBEk erabilera eta definizio horiek 1024ko berreketak zalantzarik gabe denotatuko zituen. Hala, kibibyte bat (1 KiB) 10241 byte = 1024 byte da, mebibyte bat (1 MiB) 10242 byte = 1.048.576 byte, eta abar. Bitartean, interpretazio dezimalek 1000-ren berreketak denotatuko zituen. 

### Adibide praktikoak 
## Erabilera komunak 
Programazioko lengoaia askok byte datu-motak definitzen dituzte.

C eta C++ programazio-lengoaiek honela definitzen dute bytea: "datuak biltegiratzeko unitate helbideragarria, behar bezain handia, inguruko oinarrizko karaktere-multzoko edozein kide mantentzeko" (C arauaren 3.6 klausula). 

Javaren jatorrizko datuen byte mota zortzi bit gisa definitzen da. Sinatutako datu-mota bat da, –128 eta 127 balio tartekoa.

.NET programazio-lengoaiek, hala nola C#, bytea sinatu gabeko mota gisa definitzen dute, eta sbytea (signed byte), berriz, sinatutako datu-mota gisa, 0 - 255 eta -128 - 127 balioekin, hurrenez hurren.

## Adierazpena 
Byte bat modu ezberdinetan adieraz daiteke:
* Sistema bitarra: 0000 0000 - 1111 1111, adibidez: 01011010
* Sistema zortzitarra: 000 - 377, adibidez: 132
* Sistema hamartarra:
** Zenbaki naturalak: 0 - 255, adibidez: 27
** Zenbaki osoak: -128 - 127
* Sistema hamaseitarra: 00 - FF, adibidez: C3
* ASCII bidez kodetutako karakterea: adibidez, N

## Erreferentziak 
## Ikus, gainera 
* Megabit segundoko
* Megabyte segundoko
* Bit
* Memoria

## Kanpo estekak 
* Zientzia.net atariko artikulua: "Informatikariek bazterrak nahastu zituztenekoa: kilobyteak eta kibibyteak"