Science >> Wetenschap >  >> Fysica

Hoe binair naar decimaal te converteren (en vice versa)

Binaire code kan uw computer fijne details vertellen over hoe een stem klinkt of hoe kleuren zou moeten verschijnen. Jan Hakan Dahlstrom/Getty Images

Mensen hebben de afgelopen vijf en een half millennium besteed aan het bedenken van meer dan 100 verschillende manieren om getallen op te schrijven. Met alle respect voor de Romeinse cijfers:'s werelds favoriete techniek op dit moment is – met een enorme marge – het moderne decimale systeem. De gebruikers kunnen elk gewenst geheel getal uitdrukken met slechts 10 kleine karakters:0, 1, 2, 3, 4, 5, 6, 7, 8 en 9.

Uw computer heeft echter een andere benadering. Laptops, smartphones en andere apparaten zijn afhankelijk van binaire code. Een wiskundige taal, binair, geeft instructies door aan deze hightech gadgets. Het vertelt uw computer hoe de stem van een podcaster klinkt, welke kleuren in een YouTube-video moeten verschijnen en hoeveel letters er zijn gebruikt in de e-mail die uw baas zojuist heeft verzonden.

Binaire code doet zijn naam eer aan. In tegenstelling tot het decimale getalsysteem gebruikt het slechts twee cijfers, die programmeurs 'bits' noemen. Meestal is er '0' en '1'. En dat is alles. Gelukkig laten we je zien hoe je een binair getal kunt converteren naar het bekendere decimale systeem. Dan doen we, net als een goede goochelaar, precies het tegenovergestelde:we brengen het decimaalteken naar een binaire waarde.

Inhoud
  1. Ken uw exponenten
  2. Het binaire getalsysteem begrijpen
  3. Binaire getallen converteren naar decimale waarden
  4. Het decimale equivalent bepalen
  5. Decimale conversieformule
  6. De decimale waarde interpreteren

Ken uw exponenten

Het begrijpen van positionele notatie is essentieel voor het omgaan met zowel getalsystemen als conversies. Elk cijfer speelt een rol in de berekening, van het meest significante bit tot het minst significante bit. Technisch gezien zijn 0 en 1 de enige bits die je nodig hebt om binaire getallen te schrijven. Maar om logisch te zijn van hen moet je een derde waarde begrijpen:2.

Het is het beste als we dit aan de hand van een voorbeeld uitleggen. Het getal 138 wordt correct uitgedrukt in binaire code als "10001010 ." Hoe kan uw computer weten dat deze schijnbare reeks wartaal '138' betekent? Programmeren is een deel van het antwoord. Iemand heeft uw apparaat geïnformeerd dat — in dit geval — de binaire code een getal beschrijft in plaats van een geschreven woord of zin; er is een aparte methode om dit laatste te decoderen.

Zodra dit basisfeit is vastgesteld, werkt de code door aan elk afzonderlijk bit een andere exponent van 2 toe te wijzen (dat wil zeggen, elke 0 en elke 1). Een exponent is een waarde die een bepaald aantal keren met zichzelf wordt vermenigvuldigd. Dus 2 tot de derde macht, geschreven als 2 3 , is 2 x 2 x 2, wat gelijk is aan 8.

Geniet van de volgende lijst met bevoegdheden van 2. Geloof ons, je zult dit binnenkort willen bekijken.

2 =1

2 1 =2

2 2 =4

2 3 =8

2 4 =16

2 5 =32

2 6 =64

2 7 =128

2 8 =256

2 9 =512

2 10 =1024

Het binaire getalsysteem begrijpen

Laten we nu teruggaan naar ons oorspronkelijke binaire getal:10001010. Als Engels je moedertaal is, zet je dan schrap, want je staat op het punt tegen je instincten te vechten. Kijk, geschreven Engels wordt van links naar rechts gelezen. Maar nu moeten we dat binaire getal ontleden door in de tegenovergestelde richting te gaan:van rechts naar links.

In elk binair getal moet het bit dat het verst naar rechts ligt met 2 worden vermenigvuldigd. Vervolgens wordt het bit dat direct links daarvan ligt, vermenigvuldigd met 2 1 . Vervolgens het bit links wordt vermenigvuldigd met 2 2 . Enzovoort. Zie je hier een patroon? De individuele exponenten van 2 worden in oplopende volgorde gebruikt, van rechts naar links .

Oké, dus nu is het onze taak om dat patroon gaande te houden totdat we een exponent van 2 hebben gekoppeld aan elk bit (elke 0 en 1) in het binaire getal. We stoppen zodra het laatste stukje, dat helemaal links, is vermenigvuldigd met de juiste exponent van 2.

Een handige manier om uw cijfers recht te houden, is door de exponenten fysiek uit te lijnen over de overeenkomstige binaire bits op een vel papier. Idealiter zou het er ongeveer zo uit moeten zien:

Om verwarring te voorkomen, plaatst u uw binaire cijfers en decimale getallen op één lijn volgens dit conversieschema. HoeStuffWorks

Binaire getallen omzetten naar decimale waarde

Goed spul. Oké, laten we nu terugkeren naar de feitelijke conversie van binair naar decimaal. Omdat 10001010 8 afzonderlijke bits bevat, gaan we 8 afzonderlijke vermenigvuldigingsproblemen doen. Laten we beginnen met de 0 helemaal rechts. Wat is 0 x 2? Het juiste antwoord is 0.

Eén probleem opgelost, nog zeven te gaan. Verplaats één veld naar links. Zie je de "1" daar? Nou ja, 1 x 2 1 =2. Verplaats nu nog een veld naar links. Als u dit doet, krijgt u 0 x 2 2 , wat gelijk is aan 0. Als u dit patroon blijft gebruiken, van het meest rechtse cijfer naar het meest linkse cijfer, ziet u het volgende:

0 x 2 =0

1 x 2 1 =2

0 x 2 2 =0

1 x 2 3 =8

0 x 2 4 =0

0 x 2 5 =0

0 x 2 6 =0

1 x 2 7 =128

Het decimale equivalent bepalen

Wacht even, we zijn bijna bij de finish! Neem de uitkomsten van al die vermenigvuldigingsproblemen en tel ze bij elkaar op. Niet vermenigvuldigen, maar optellen . Snugger? Wat is 0 + 2 + 0 + 8 + 0 + 0 + 0 + 128?

Voordat we daar antwoord op geven, laten we eerst al die nullen wegwerken. We hebben ze niet nodig bij een optellingsprobleem. Het enige wat we echt hoeven te doen is deze puzzel oplossen:2 + 8 + 128 =? Raad eens? Het uiteindelijke antwoord is 138 . Gefeliciteerd, de cirkel is rond! Ga een overwinningsronde maken.

Merk op dat 138 een geheel getal is. Er is een techniek om getallen met een fractionele component, zoals 0,25 en 3,14, om te zetten in binair getal. Maar volledige openheid:het is nogal ingewikkeld. Als u daar geen last van heeft en meer wilt weten, biedt het Institute of Electrical and Electronics Engineers (IEEE) een gestandaardiseerde conversiemethode.

Decimale conversieformule

Nadat we "10001010" hebben veranderd in "138", is het tijd om ons proces om te keren. Stel dat u met 138 bent begonnen en dit naar binair getal hebt moeten converteren. Hoe zou jij het doen? Nogmaals, exponenten zijn de sleutel tot het hele verhaal.

Kijk nog eens naar onze "machten van 2"-lijst. Zoek de waarde die het dichtst bij 138 komt zonder deze te overschrijden . Een snelle herlezing vertelt ons dat 138 tussen 256 ligt (wat 2 8 is ) en 128 (dat is 2 7 ). Nu gaan we 128 aftrekken van 138. Dit is de vergelijking:138 - 128 =10

Neem vervolgens die 10 en kijk nog eens naar de exponentenlijst. De macht van 2 die het dichtst in de buurt komt van 10 is 2 3 , of 8. Dus op dit punt is het onze taak om 8 van 10 af te trekken. Zo:10 - 8 =2. En wat weet jij? Het getal 2 is gelijk aan 2 1 . Dit proces leverde ons drie belangrijke cijfers op:128, 8 en 2. Ons volgende doel is om ze bij elkaar op te tellen:128 + 8 + 2 =138.

De decimale waarde interpreteren

Zoek een vel papier als je dat nog niet hebt gedaan. Schrijf de waarde op van elke exponent van 2, beginnend met '128' (onthoud dat dit 2 7 is) ) en "1" (wat gelijk is aan 2). Doe dit in aflopende volgorde van links naar rechts . En zorg ervoor dat er wat ruimte tussen elk nummer zit.

Je krabbel zou er als volgt uit moeten zien:128 64 32 16 8 4 2 1. Zoals je kunt zien, staan ​​hier acht afzonderlijke waarden vermeld. Teken een naar beneden wijzende pijl (↓) onder elke waarde. Bekijk dan het optelprobleem dat we hierboven hebben opgeschreven, het probleem dat zegt:128 + 8 + 2 =138.

Zie je een "128" in dat probleem? Zo ja, schrijf dan een "1" onder de overeenkomstige pijl. Staat er een "64" in de vergelijking? Nee! Dus onder die pijl gaan we een '0' schrijven. Houd hetzelfde patroon aan en je krijgt dit:

Een van de beste decimale conversiemethoden. HoeStuffWorks

Bekend voorkomen? Er blijft 10001010 over – en zoals we al hebben vastgesteld, betekent dit ‘138’. Daar ga je dan. In korte tijd heb je het binaire getalsysteem geleerd, het decimale equivalent, en hoe je de conversie van binair naar decimaal kunt voltooien. Vervolgens hebt u het decimale getallensysteem gebruikt om terug te bellen naar slechts twee cijfers. Onze spreekwoordelijke tovenaar heeft het konijn laten verdwijnen en weer terug gebracht. Wortelen overal!

Dat is grappig

De populaire sci-fi-komedieserie "Futurama" houdt van wat wiskundegrappen. In de aflevering "The Honking" van seizoen twee wordt een spookhuis vergund aan de schurkachtige robot, Bender Bending Rodriguez. Als hij naar binnen gaat, is hij doodsbang om een ​​geheim binair bericht te ontdekken met de tekst '1010011010'. Misschien had Bender gelijk toen hij bang was; in decimale vorm betekent dit '666'.

Veel beantwoorde vragen

Wat is het binaire getal 11111111 in decimalen?
Het binaire getal 11111111 is gelijk aan het decimale getal 255.