Binair naar hexadecimaal converteren
- Categorie: Tutorials
Af en toe is het leuk om een pauze te nemen van tutorials en naar iets een beetje geekier te kijken. We hebben allemaal binaire code gezien en de meeste mensen weten dat deze uit twee tekens bestaat, nul en één. De meeste mensen begrijpen ook dat binaire code kan worden omgezet in decimalen door het binaire getal van de rechterkant van de reeks te nemen en dit toe te passen op een andere reeks getallen 'twee tot de macht van'. Een binaire code van acht cijfers zou er bijvoorbeeld als volgt uit kunnen zien: '10010001'. Dit omvat een '1', een '16' en een '128', wat een totaal van 145 oplevert. Dat is vrij eenvoudig. Het wordt ingewikkelder als u meer getallen toevoegt, maar de hoofdsom is hetzelfde.
Nu - als je veel HTML-werk doet, heb je codes gezien die kleuren vertegenwoordigen. Deze codes bevatten letters en zijn hexadecimaal. De letters zijn eigenlijk cijfers, maar omdat de karakters die we gewoonlijk gebruiken in basis 10 zijn, dwz de cijfers 0 tot en met 9, moeten we letters gebruiken om de cijfers 10,11,12,13,14 en 15 weer te geven. Dit komt omdat hexadecimaal is basis 16, en heeft 16 cijfers inclusief nul. We gebruiken geen twee tekens in een hexadecimaal getal totdat we bij het getal 16 komen, wat eigenlijk '10' is. Dit vertegenwoordigt één zestien. Het hexadecimale getal '18' is eigenlijk zestien plus 8, wat 24 is. De hexadecimale code '1F' staat voor 31 in decimalen omdat we er een hebben van zestien plus 15. Begrijpt u het idee?
Oké, dus we kunnen meestal uitrekenen wat een hexadecimaal getal in decimalen is als we maar twee tekens hebben. Het ene cijfer geeft aan hoeveel '16' we hebben, en het andere telt gewoon van nul tot vijftien. Het hoogste nummer dat we hebben is dus 'FF', dat is vijftien keer zestien, plus vijftien. Het antwoord is 255. Je kunt al de voordelen van hex zien, want in het binaire bestand zou dat getal acht tekens nodig hebben, en we hebben het in tweeën gedaan.
Dus hoe lossen we grotere getallen gemakkelijker op in decimalen? Het antwoord is om elk hexadecimaal teken op te splitsen in zijn binaire equivalent. Dus het hexadecimale nummer 8FA4 wordt binair 1000.1111.1011.0100. Hier kunnen we elk nummer zien dat het ultieme antwoord vormt. Beginnend van links hebben we een 4, een 16, een 32, een 128 enz… helemaal tot aan het laatste teken, dat een 32.768 is. Tel alle getallen vertegenwoordigd door enen bij elkaar op en we hebben 36772. Dus onze hexadecimale code van 8FA4 is eigenlijk 36772 in decimalen. Vier tekens om iets te vertegenwoordigen dat uit zestien tekens in binair getal bestaat, is inderdaad erg indrukwekkend.
Als u zich uw hexadecimale codes in HTML herinnert die kleuren vertegenwoordigen, zult u opmerken dat u hexadecimale codes van 6 tekens heeft. Het eerste teken staat voor zestien, de tweede zestien voor de macht 2, de derde is zestien voor de macht 3 enzovoort. Als je het uitwerkt, is het grootste aantal dat je kunt hebben met zes hexadecimale cijfers 16.777.215. Bijna zeventien miljoen kleuren vertegenwoordigd door slechts zes tekens.