Conţinutul principal
Curs: Mate pentru Info > Unitatea 3
Lecția 4: Baza 16Numerele hexazecimale
Numerele binare sunt o modalitate excelentă pentru calculatoare de a reprezenta numerele. Dar nu sunt la fel de grozave și pentru oameni—sunt atât de lungi și durează atât de mult să numărăm cifrele de și . Când informaticienii lucrează cu numere, ei tind să folosească fie sistemul zecimal, fie sistemul hexazecimal. Da, un alt sistem numeric!
Din fericire, sistemele numerice se aseamănă mai mult decât se diferențiază, iar acum că ești experimentat cu sistemele zecimal și binar, cel hexazecimal nu îți va crea dificultăți.
În sistemul zecimal, fiecare cifră reprezintă o putere a lui —unitățile, zecile, sutele, etc. Spunem că este baza sistemului zecimal.
În sistemul hexazecimal, fiecare cifră reprezintă o putere a lui .
Iată cum numărăm până la 10 în sistemul hexazecimal: , , , , , , , , , .
Nu arată neobișnuit, până ajungem la "numărul" final . Vezi tu, în sistemul hexazecimal fiecare cifră reprezintă o valoare între - , dar numarele zecimale - nu încap într-o singură cifră. Pentru a rezolva problema, sistemul hexazecimal folosește literele - pentru a reprezenta numerele - .
Așa că vom număra de la 10 la 15 astfel: , , , , , . Bizar, dar așa e!
De fapt au existat diverse propuneri de-a lungul anilor pentru cum ar trebui scrise valorile 10-15, dar - este soluția care a fost aleasă.
Să numărăm mai departe. Iată numărul , exprimat în hexazecimal ca :
Acest număr folosește două cifre, cea din dreapta indicând unitățile ( ), iar cea din stânga fiind poziția șaisprezecilor ( ). La fel cum am adunat numere zecimale si binare, putem aduna și vom observa că într-adevăr numărul hexazecimal este egal cu valoare zecimală .
Să vedem și un număr care conține o literă. Să luăm numărul zecimal , scris în format hexazecimal ca :
Pentru a înțelege, trebuie să ne amintim că reprezintă valoarea . Eu fac asta numărând literele pe degete, dar tu poti număra cum îți convine ție, atât timp cât începi cu de la .
Acum putem continua cu adunarea, așa cum am făcut mai devreme, și vom vedea că este într-adevăr egal cu valoarea zecimală .
De ce baza 16?
Acum s-ar putea să te întrebi de ce informaticienilor le place atât de mult sistemul hexazecimal. De ce să folosim un sistem în care avem nevoie de litere în loc de numere? O mică excursie în istorie ne va explica de ce...
Primele calculatoare foloseau structuri de 4 biți, adică procesau mereu biții în grupe de câte 4. De aceea încă scriem biții în grupe de 4, de pildă scriem pentru a exprima numărul zecimal deși am putea scrie doar .
Câte valori pot fi reprezentate folosind 4 biți? Cea mai mică valoare este ( peste tot, ), iar cea mai mare valoare este ( peste tot, ), deci 4 biți pot indica 16 valori. Aha, iată numărul 16!
Fiecare grupă de 4 biți este echivalentă cu o singură cifră în sistemul hexazecimal. Astfel devine foarte ușor să trecem numerele binare în sistemul hexazecimal și este alegerea firească pentru calculatoare.
Trecerea din sistemul binar la hexazecimal
Să demonstrăm legătura strânsă dintre sistemul binar și cel hexazecimal trecând din binar la hexazecimal.
Să începem cu un număr binar scurt:
El este scris cu 4 biți, însemnând că îi corespunde unei singure cifre hexazecimale. Pe fiecare poziție în afară de cea care îi corespunde lui 2 avem cifra , deci este egal cu numărul zecimal . Sistemele zecimal și hexazecimal reprezintă numerele de la - la fel, așa că este tot în format hexazecimal.
Să încercăm un număr binar mai greu:
O metodă de abordare ar fi să calculăm numărul zecimal reprezentat în lunga noastră secvență de și , iar apoi să trecem acel număr în sistemul hexazecimal. Această metodă ar merge, dar of, cât ar trebui să muncim pentru un număr așa lung!
Abordarea mai simplă ar fi să convertim fiecare grupă de 4 biți, pe rând.
Vom începe cu grupa din stânga, , care este egală cu , adică numărul zecimal . Acest număr e mai mic decât , deci este tot în hexazecimal.
Următoare grupă e , sau , adică valoarea zecimală . Pentru a reprezenta acest număr în hexazecimal avem nevoie de o literă, .
Mai departe avem grupa , adică , valoarea zecimală . Ea este aceeași în sistemul hexazecimal, .
Ultima grupă este , adică egal cu . Avem din nou nevoie de o literă pentru reprezentarea hexazecimală, .
Rezultatul hexazecimal este . Am completat conversia fără a afla ce număr zecimal reprezintă. Îți voi spune acum că atât , cât și sunt egale cu numărul zecimal . Un număr foarte mare, bine că am transformat câte o cifră odată.
Modele în numere hexadecimale
Să învățăm să lucrăm mai intuitiv cu sistemul hexazecimal.
Prima dată: fiind dat un număr de cifre, cum arată cel mai mare număr posibil cu atâtea cifre? În sistemul zecimal ele sunt formate doar din , cum ar fi . În sistemul binar ele sunt formate doar din , cum ar fi .
În sistemul hexazecimal, fiecare cifră va avea valoarea , iar numărul va arăta așa: . Când vom vedea un astfel de număr, vom ști că el este cea mai mare valoare ce poate fi formată cu numărul dat de cifre. Pentru a reprezenta un număr mai mare am avea nevoie de mai multe cifre.
Bun și acum să vedem cât înseamnă un astfel de număr maxim. Putem folosi aceeași metodă ca pentru numerele binare: cel mai mare număr care poate fi reprezentat cu cifre este egal cu . Dar acum, că lucrăm cu puteri în baza 16 în loc de 2, s-ar putea să ne trebuiască un calculator.
Iată un tabel cu primele 4 cele mai mari valori:
Nr. cifre | Cel mai mare nr. hexadecimal | Nr. zecimal echivalent |
---|---|---|
1 | ||
2 | ||
3 | ||
4 |
Utilizări ale sistemului hexazecimal
În această unitate despre modul de funcționare al calculatoarelor vom întâlni cel mai des numere binare. Este totuși important să înțelegem și numerele hexazecimale, deoarece ele vor apărea mai des în unitățile următoare și în general în viața de programator.
Voi lua un exemplu din viața mea: dezvolatatorii web utilizează numere hexazecimale pentru a reprezenta culorile. Descriem culorile folosind o combinație de 3 componente: roșu, verde și albastru. Fiecare dintre aceste componente poate lua o valoare de la la . Culoarea albastră poate fi scrisă ca culori unice — mai mult de 16 milione de culori!
rgb(0, 0, 255)
sau în varianta hexazecimală, mai concisă, #0000FF
. Folosind această metodă de notare putem descrie Acum, că ai aflat despre numerele hexazecimale, încearcă să le observi în jur. Le vei vedea adesea cu un
0x
în față, de exemplu 0x4F
, sau poți recunoaște după combinația specifică de 0-9
și A-F
. Dacă găsești o utilizare interesantă a lor, împărtășește-ți descoperirea în secțiunea de Sfaturi și Mulțumiri de mai jos.🙋🏽🙋🏻♀️🙋🏿♂️Ai întrebări pe acest subiect? Suntem bucuroși să-ți răspundem — întreabă în zona de întrebări de mai jos!
Vrei să te alături conversației?
Nici o postare încă.