 | No s'ha de confondre ambbyte. |
Unbit —simbolitzat habitualment com ab, de l'anglès,binary digit, "dígit binari"— és la unitat d'informació mínima utilitzada enInformàtica i enteoria de la informació. Un bit pot tenir només dos estats mútuament exclusius, habitualment representats amb 0 i 1, o vertader o fals, obert o tancat, blanc o negre, nord o sud, masculí o femení, vermell o blau, etc. Només cal assignar un d'aquests valors a l'estat de "apagat" (0), i l'altre a l'estat de "encès" (1). La paraula «bit» és la contracció de les paraules anglesesbinary digit, que signifiquen «xifra binària», amb un doble sentit de la paraulabit, que també significa «tros». No s'ha de confondre un bit amb unbyte, paraula anglesa que es pronuncia/bait/. En informàtica, el byte és un grup elemental de 6 a 9 bits, generalment 8, en aquest cas també se'n dirà unoctet.
Se'n deu la invenció aJohn Tukey i la popularització aClaude Elwood Shannon.[1]
Es pot imaginar un bit com una bombeta que pot estar en un dels següents dos estats:
- Apagada
o encesa
La codificació de la informació usant símbols discrets (bits) es va començar a usar en les targetes perforades inventades perBasile Bouchon iJean-Baptiste Falcon (1732), desenvolupat perJoseph Marie Jacquard (1804), i més tard adoptada perSemen Korsakov,Charles Babbage,Herman Hollerith, i els primers fabricants d'ordinadors comIBM. La mateixa idea es pot aplicar a una cinta de paper perforada. En tots aquests sistemes, el mitjà (targeta o cinta) conté, conceptualment, una llista de posicions que poden contenir forats. Cada posició pot estar perforada o no, constituint així un bit d'informació. La codificació de text mitjançant bits també fou utilitzat en codiMorse (1844) i als inicis de les màquines amb capacitat de comunicació digital com els teletips.
Ralph Hartley va suggerir l'ús d'una mesura logarítmica de la informació en 1928. Claude I.Shannon va ser el primer a utilitzar la paraula bit en el seu estudi AMathematical Theory of Communication.[2] Ell atribueix l'origen de la paraula aJohn W. Tukey, que havia escrit una nota dels Laboratoris Bell el 9 de gener de 1947 a la qual va contraure "dígit binari" ("binary digit") simplement "bit". Curiosament,Vannevar Bush havia escrit el 1936 que "bits d'informació" podrien ser emmagatzemats en les targetes perforades utilitzades en els ordinadors mecànics de l'època.[3] La primera computadora programable construïda perKonrad Zuse usava notació binària per als nombres.
Un bit no pot tenir més que dos valors. Segons el context,digital,lògic (vegeuÀlgebra de Boole,electrònica digital, omagnètica, se'ls anomena «zero» i «un», que equival respectivament a «fals» i «verdader», «obert» i «tancat», o «nord» i «sud»):
| Context | Valors |
|---|
| digital | 0 | 1 |
|---|
| lògic | no/fals | si/veritat |
|---|
| espai | aquí | allà |
|---|
| electrònica | obert | tancat |
|---|
| magnètic | nord | sud |
|---|
| òptic | negre | blanc |
|---|
El valor 0 és associat a «obert» en electrònica, ja que quan uninterruptor és obert, llavors el circuit està obert, i el corrent no passa.
No hi ha un estàndard universalment acceptat sobre les abreviatures debit ibyte. Un estàndard freqüentment citat és el de la Comissió electrotècnica internacional[4] que defineixbit com el símbol de la unitat binària (per exemplekbit per a quilobit). El mateix estàndard defineixo iB per albyte.
Avui, l'estàndard harmonitzatISO/IEC[5] reemplaça i anul·la els articles 3.8 i 3.9 de la norma IEC 60027-2:2005 (els relatius a la teoria de la informació i als prefixos binaris).
Un altre estàndard sovint citat és l'IEEE 1541, que donab com a símbol d'unitat per abit iB per abyte. Aquesta convenció és freqüentment utilitzada en informàtica, però no gaudeix d'un reconeixement internacional per diverses raons:
- aquests dos símbols ja són utilitzats per a altres unitats:b per albarn iB per albel;
- bit és ja l'abreviatura debinary dígit, hi ha poques raons per abreviar-lo més;
- les normes del SI volen que les majúscules en els símbols d'unitats estiguin reservades a les que tenen per origen el nom d'una persona (A, símbol de l'ampere; V, símbol delvolt, etc.; però tots els noms d'unitats s'escriuen en minúscules: metre, segon, ampere, volt, etc.)
- en lloc debyte, el termeoctet és utilitzat en certs àmbits (per l'UIT sobretot)
- b és de vegades utilitzat com a símbol del byte, així combit per al bit.
El bel és rarament utilitzat així, s'utilitza més aviat el decibel (dB), que és poc probable confondre amb undecibyte, l'eventualitat d'una confusió és rara, tot i que les dues unitats són utilitzades en telecomunicacions.
Paral·lelització del tren de bits
[modifica]Dels anys 1970 fins al 1986, els investigadors han intentat tractar els més grans nombres sencers possibles percicle de rellotge pels seus processadors més poderosos. En efecte, és molt més eficaç en termes de rapidesa fer per unainstrucció un càlcul sobre una xifra codificat en un gran nombre d'octets més aviat que de descompondre l'operació en diverses operacions que manipulen xifres més petites.
L'Intel 4004 va ser el primer microprocessador. Manipulava paraules de 4 bits. Els processadors de8 bits el va reemplaçar; han seguit els de16 bits, els 16-32, els de32 bits, els de64 bits que equipen els ordinadors personals des de 2002, i així fins al processadorVery Long Instruction Word.
Tractament paral·lel dels bits
[modifica]Els circuits electrònics són sovint concebuts per tractar diversos bits en paral·lel. Això permet accelerar o augmentar les capacitats de tractament de la informació.
Exemple d'acceleració de tractament: Cal un segon per transferir unmegabyte de dades a través d'unbus informàtic de 8 bits cadenciat a 1megahertz. Si l'amplada del bus és duplicada a 16 bits, llavors amb mig segon n'hi ha prou.
Exemple d'augment de les capacitats: Unprocessador de 32 bits pot dirigir un màxim de 4GiB dememòria d'ordinador i un de 64 bits pot dirigir 16EiBs.
El subdimensionament de les capacitats dels processadors és un problema històric per l'augment de les capacitats de memòria. Així, elsPC Compatibles han estat de manera inicial basats en una arquitectura de 16 bits (estructurax86) que no podia adreçar més de 64 kbibytes de memòria sense passar per complicacions (segmentació,memòria estesa,memòria expandida). Les capacitats de tractament 32 bits foren introduïdes en la família x86 amb l'Intel 80386, però no va ser fins a unsistema operatiu concebut per treure profit de les capacitats de 32 bits (Linux,Windows NT,Windows 95) quan els 4 gibibytes d'adreçament poden plenament ser explotats.
Les dificultats trobades per augmentar les capacitats ampliant el nombre de bits tractats de manera simultània constitueixen un desafiament tècnic que ha estat àmpliament explotat pel màrqueting. Així els venedors deconsoles de jocs i detargetes gràfiques han presentat sovint el seu producte com de 32, 64 o 128 bits basant-se en el bus més ample que es podia trobar al producte, sense que constituís una especificació tècnica molt pertinent.
Little endian ibig endian es refereixen a l'ordre que les màquines assignen alsbytes que representen nombres o valors numèrics. Una màquinalittle endian assigna elsbytes menys significatius a l'extrem més baix de la memòria, mentre que una màquinabig endian assigna elsbytes més significatius a l'extrem més alt. Als ordinadors, cadabyte s'identifica amb la seva posició a lamemòria (direcció). Quan es manegen nombres de més d'un 'byte', aquestsbytes també han d'estar ordenats de menor a major, indicant la posició delbyte menys significatiu i delbyte més significatiu. D'aquesta manera, unbyte amb el número decimal 27 s'emmagatzemaria en una màquinalittle endian igual que en una màquinabig endian, ja que només ocupa unbyte. No obstant això, per a números més grans els bytes que els representen s'emmagatzemarien en diferent ordre a cada arquitectura. Aquest aspecte és particularment important en la programació enllenguatge assemblador o encodi màquina, ja que algunes màquines consideren el byte situat en la direcció més baixa de la memòria el menys significatiu (arquitecturalittle endian), com els processadorsIntel) mentre que altres consideren que aquest és elbyte més significatiu (arquitecturabig endian, com els processadorsMotorola).
Per exemple, considerem el nombre hexadecimal sencerAABBCCDD, de 32bits (4bytes), localitzat a la direcció 100 de la memòria. El nombre ocuparia les posicions des de la 100 a la 103, però depenent de si la màquina és little o big endian, elsbytes s'emmagatzemarien de diferent manera:
Little endian (com Intel)
| 100 | 101 | 102 | 103 | |
... | DD | CC | BB | AA | ... |
Big endian (com Motorola)
| 100 | 101 | 102 | 103 | |
... | AA | BB | CC | DD | ... |
A les imatges de dalt, on es representen les posicions de memòria 100, 101, 102 i 103 creixent d'esquerra a dreta, «sembla» que la representacióbig endian és més natural, ja que el nombreAABBCCDD ho podem llegir correctament (vegeu figura), mentre que en la representaciólittle endian sembla que el número està al revés, o potes amunt. Tot i això, no hi ha res que ens impedeixi imaginar que les adreces de memòria «creixen» de dreta a esquerra, i en observar la memòria d'aquesta manera, la representaciólittle endian «es veu natural» i és la big endian la que «sembla» al revés, com es mostra a les figures de baix.
Little endian (com Intel)
| 103 | 102 | 101 | 100 | |
... | AA | BB | CC | DD | ... |
Big endian (com Motorola)
| 103 | 102 | 101 | 100 | |
... | DD | CC | BB | AA | ... |
Independent de si la màquina és d'arquitecturalittle endian obig endian, els bits dins de cada byte sempre estan en el mateix ordre, amb el bit més significatiu a l'esquerra i el menys significatiu a la dreta. Els registres del processador, que poden ser de 4 a 64 bits, i més, també tenen els seus bits en el mateix ordre en tots dos tipus de màquina. La diferència entre little i big endian només existeix externament, a l'ordre en què els bytes es representen en memòria.
Arquitectures de 4, 8, 16, 32 i 64 bits
[modifica]Quan es parla deCPUs omicroprocessadors de 4, 8, 16, 32, 64 bits, es refereix a la mida, en nombre de bits, que tenen els registres interns del processador i també a la capacitat de processament de launitat aritmeticològica (ALU). Un microprocessador de 4 bits téregistres de 4 bits i l'ALU fa operacions amb les dades en aquests registres de 4 bits, mentre que un processador de 8 bits té registres i processa les dades en grups de 8 bits bits.
Els processadors de 16, 32 i 64 bits tenen registres i ALU de 16, 32 i 64 bits respectivament, i generalment poden processar les dades, tant a la mida en bits dels seus registres com, depenent del seu disseny, en determinats submúltiples d'aquests . Així, un processador de 16 bits pot processar les dades en grups de 8 i 16 bits, comportant-se com si fos un processador tant de 8 com de 16 bits. Un processador de 32 bits pot processar les dades en grups de 8, 16 i 32 bits, i el processador de 64 bits pot processar les dades en grups de 8, 16, 32 i 64 bits. Per poder fer-ho, els processadors de 16, 32 i 64 bits generalment tenen els seus registres dividits en altres registres més petits. Així, els registres d'un processador de 32 bits, per exemple, poden estar dividits alhora en registres de 16 i 8 bits i pot fer operacions aritmètiques, lògiques, de comparacions, i d'altres, amb qualsevol dels seus registres en qualsevol d'aquestes mides.
Quan es parla de processadors de, diguem-ne 32 bits, ens referim a la seva capacitat de processar dades en fins a 32 bits simultàniament (també pot processar dades en 8 i 16 bits). La denominació de "microprocessador de 32 bits" no es refereix a la mida del bus de dades del CPU ni del bus d'adreces, sinó a la seva capacitat de treballar normalment amb les dades al nombre màxim de bits (llevat d'alguna excepció).
Per exemple, els primers processadors de l'arquitecturax86, l'Intel 8086 i l'Intel 8088, eren processadors de 16 bits, perquè tenien registres de 16 bits (i de 8 bits) i les seves unitats aritmètiques lògiques podien efectuar operacions de 16 bits (i de 8 bits). Tot i això, exteriorment, el 8086 tenia un bus de dades de 16 bits i podia moure dades des de i cap al CPU en blocs de 8 i 16 bits, mentre que el 8088 tenia un bus de dades de només 8 bits, i també podia moure dades de 8 i 16 bits des de i cap al CPU, però, com que el seu bus de dades era de només 8 bits, per moure 16 bits de dades havia de fer dues operacions de lectura o escriptura, de 8 bits, pel seu limitat bus de dades. Això era completament transparent, els dos processadors executaven exactament el mateixconjunt d'instruccions de 16 bits, només que el 8088 era més lent cada vegada que havia de llegir o escriure 16 bits de dades cap a o des de la memòria.
- ↑En el marc de lateoria de la informació proposada per Shannon, quan es rep la informació que correspon a un esdeveniment que té 1 possibilitat sobre 2 de produir-se, es repun bit d'informació. A tall d'exemple: quan l'àrbitre tira una moneda en un partit de futbol, dona un bit d'informació als 2 capitans dels equips en competició.
- ↑Shannon, Claude «A Mathematical Theory of Communication». Bell Labs Technical Journal., 1948. Arxivat de l'original el 1998-07-15 [Consulta: 4 octubre 2014].Arxivat 1998-07-15 aWayback Machine.
- ↑Bush, Vannevar «Instrumental analysis». Bulletin of the American Mathematical Society 42 (10):, 1936, pàg. 649–669..
- ↑IEC 60027
- ↑ISO/IEC 80000
Viccionari