Tutorials

▷ Binair, decimaal, octaal en hexadecimaal systeem wat het is en hoe het werkt

Inhoudsopgave:

Anonim

Als u een student computerwetenschappen, elektronica of een technische tak bent, moet u onder meer weten dat u nummersysteemconversies moet uitvoeren. Bij computergebruik verschillen de gebruikte nummeringssystemen van wat we traditioneel kennen, net als ons decimale systeem. Dit is de reden waarom, heel mogelijk, als we ons inzetten op het gebied van zowel computer-, programmeer- en soortgelijke technologie, we de meest gebruikte systemen moeten kennen en moeten weten hoe we van het ene systeem naar het andere kunnen converteren.

Inhoudsindex

Nummeringsysteemconversies uitvoeren

Het is vooral handig om het decimale naar binaire conversiesysteem te kennen en vice versa, omdat dit het nummeringssysteem is waarmee de componenten van een computer rechtstreeks werken. Maar het is ook erg handig om het hexadecimale systeem te kennen, omdat het bijvoorbeeld wordt gebruikt om de kleurcodes, toetsen en een groot aantal codes van ons team weer te geven.

Nummeringssystemen

Een nummeringssysteem bestaat uit de weergave van een set symbolen en regels waarmee we de geldige nummers kunnen samenstellen. Met andere woorden, het bestaat uit het gebruik van een reeks begrensde symbolen waarmee het mogelijk is om onbeperkt andere numerieke waarden te vormen.

Zonder al te ver in te gaan op wiskundige definities, zijn de systemen die het meest worden gebruikt door mensen en machines de volgende:

Decimaal systeem

Het is een positioneel nummeringssysteem waarin hoeveelheden worden weergegeven door de rekenkundige basis van het getal tien.

Omdat de basis nummer tien is, hebben we de mogelijkheid om alle cijfers te bouwen met behulp van tien cijfers die we allemaal kennen. 0, 1, 2 3, 4, 5, 6, 7, 8 en 9. Deze nummers worden gebruikt om de positie van de machten van 10 weer te geven bij de vorming van een willekeurig nummer.

In dit nummeringssysteem kunnen we dus een getal op de volgende manier weergeven:

We zien dat een decimaal getal de som is van elke waarde door de basis 10 verhoogd tot de positie-1 die elke term inneemt. We houden hier rekening mee bij conversies in andere nummeringsystemen.

Binair systeem

Het binaire systeem is een nummeringssysteem waarin de rekenkundige basis 2 wordt gebruikt Dit systeem wordt door computers en digitale systemen intern gebruikt om absoluut alle processen uit te voeren.

Dit nummeringssysteem wordt alleen weergegeven door twee cijfers, 0 en 1. Daarom is het gebaseerd op 2 (twee cijfers), waarmee alle waardeketens worden opgebouwd.

Octaal systeem

Net als bij de vorige uitleg, kunnen we ons al voorstellen wat dit is met het octale systeem. Het Octale systeem is het nummeringssysteem waarin de rekenkundige basis 8 wordt gebruikt, dat wil zeggen dat we 8 verschillende cijfers hebben om alle getallen weer te geven. Dit zijn: 0, 1, 2, 3, 4, 5, 6 en 7.

Hexadecimaal systeem

Volgens de voorgaande definities is het decimale nummeringssysteem een ​​positioneel nummeringssysteem dat is gebaseerd op nummer 16. Op dit punt zullen we ons afvragen, hoe gaan we 16 verschillende nummers krijgen, als bijvoorbeeld 10 de combinatie is van twee nummers anders?

Nou, heel simpel, we hebben ze uitgevonden, niet wij, maar degenen die het systeem in kwestie hebben uitgevonden. De nummers die we hier zullen hebben, zijn: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E en F. dit levert in totaal 16 verschillende termen op. Als je ooit de numerieke code van een kleur hebt ingesteld, heeft deze dit type nummering en daarom zul je zien hoe wit bijvoorbeeld wordt weergegeven als de waarde FFFFFF. We zullen later zien wat dit betekent.

Conversie tussen binair en decimaal systeem

Omdat het de meest elementaire en gemakkelijk te begrijpen is, zullen we beginnen met het omzetten tussen deze twee nummeringsystemen.

Zet getal om van binair naar decimaal

Zoals we in de eerste sectie hebben gezien, vertegenwoordigen we een decimaal getal als de som van de waarden vermenigvuldigd met de macht van 10 tot de positie-1 die het inneemt. Als we dit toepassen op een binair nummer, met de bijbehorende basis, hebben we het volgende:

1 0 0 1 1

0

1 2 2 1 2 2 1 2 3 1 2 2 1 2 2

1 2 0

Maar natuurlijk, als we de procedure zouden uitvoeren zoals in het decimale systeem, zouden we andere waarden verkrijgen dan 0 en 1, die we alleen kunnen vertegenwoordigen in dit nummeringssysteem.

Maar juist dit zal erg handig zijn om de conversie naar het decimale systeem uit te voeren. Laten we het resultaat van elke waarde in het bijbehorende vak berekenen:

1 0 0 1 1

0

1 2 2 = 32

1 2 4 = 0 1 2 3 = 0 1 2 2 = 4 1 2 1 = 2

1 2 0 = 0

Welnu, als we de som maken van deze waarden die uit elke cel voortvloeien, krijgen we de decimale equivalente waarde van de binaire waarde.

De decimale waarde van 100110 is 38

We hebben alleen het cijfer (0 of 1) hoeven te vermenigvuldigen met de basis (2) verhoogd tot positie-1 die het inneemt in de figuur. We voegen de waarden toe en we hebben het getal in decimalen.

Bent u er niet van overtuigd, dan voeren we nu het tegenovergestelde proces uit:

Decimaal getal converteren naar binair

Als we eerder een vermenigvuldiging van de getallen en een som hadden gedaan om de decimale waarde te bepalen, dan moeten we nu het decimale getal delen door de basis van het systeem waarnaar we het willen converteren, in dit geval 2.

We zullen deze procedure uitvoeren totdat het niet meer mogelijk is om verder op te splitsen. Laten we het voorbeeld bekijken van hoe het zou worden gedaan.

Nummer

38 19 9 4 2 1
Divisie

÷ 2 = 19

÷ 2 = 9 ÷ 2 = 4 ÷ 2 = 2 ÷ 2 = 1

-

Rust 0 1 1 0 0

1

Dit is het resultaat van het tot een minimum beperken van de opeenvolgende divisies. Je hebt je misschien al gerealiseerd hoe dit werkt. Als we nu de rest van elke divisie nemen en de positie omkeren, krijgen we de binaire waarde van het decimale getal. Dat wil zeggen, begonnen vanaf waar we de splitsing achterwaarts hebben beëindigd:

We hebben dus het volgende resultaat: 100110

Zoals we kunnen zien, zijn we erin geslaagd precies hetzelfde nummer te hebben als aan het begin van de sectie.

Breuk decimaal getal naar binair

Zoals we weten, zijn er niet alleen hele decimale getallen, maar we kunnen ook echte getallen (breuken) vinden. En als nummeringssysteem zou het mogelijk moeten zijn om een ​​getal van het decimale systeem naar het binaire systeem om te zetten. We zien hoe we het moeten doen. Laten we het nummer 38.375 als voorbeeld nemen

Wat we moeten doen, is elk van de onderdelen scheiden. We weten al hoe we het gehele deel moeten berekenen, dus we gaan direct naar het decimale deel.

De procedure is als volgt: we moeten het decimale deel nemen en het vermenigvuldigen met de basis van het systeem, dat wil zeggen 2. Het resultaat van de vermenigvuldiging moeten we opnieuw vermenigvuldigen totdat we een fractioneel deel van 0 krijgen. Als bij het vermenigvuldigen een factiegetal verschijnt met een geheel deel, hoeven we alleen de breuk te nemen voor de volgende vermenigvuldiging. Laten we naar het voorbeeld kijken om het beter te begrijpen.

Nummer

0.375 0.75 0, 50
Vermenigvuldigen * 2 = 0, 75 * 2 = 1, 50

* 2 = 1, 00

Hele deel 0 1

1

Zoals we kunnen zien, nemen we het decimale deel en vermenigvuldigen het opnieuw totdat we 1, 00 bereiken, waarbij het resultaat altijd 0 zal zijn.

Het resultaat van 38.375 in binair getal is dan 100 110.011

Maar wat gebeurt er als we daarbij nooit een resultaat van 1, 00 kunnen halen? Laten we het voorbeeld eens bekijken met 38, 45

Nummer

0, 45 0.90 0.80 0.60 0, 20 0.40 0.80
Vermenigvuldigen * 2 = 0, 90 * 2 = 1, 80 * 2 = 1, 60 * 2 = 1, 20 * 2 = 0, 40 * 2 = 0, 80 * 2 = 1, 60
Hele deel 0 1 1 1 0 0

1

Zoals we kunnen zien , wordt het proces vanaf 0.80 periodiek, dat wil zeggen dat we de procedure nooit zullen afmaken omdat de cijfers van 0.8 tot 0.4 altijd zullen verschijnen. Dan is ons resultaat een benadering van het decimale getal, hoe verder we gaan, hoe groter de nauwkeurigheid die we zullen verkrijgen.

Dus: 38, 45 = 100 110, 01110011001 1001

Laten we eens kijken hoe we het omgekeerde proces moeten doen

Conversie fractioneel binair getal naar decimaal

Dit proces zal op dezelfde manier worden uitgevoerd als de normale wijziging van de basis, behalve dat vanaf de komma de bevoegdheden negatief zijn. Laten we gewoon het gehele deel van het vorige binaire getal nemen:

0 1 1 1 0 0

1

...
0-2 -1 = 0 1 - 2 -2 = 0, 25 1-2-3 = 0, 125 1 - 2 -4 = 0, 0625 1-2-5 = 0 1-2-6 = 0 1-2-7 = 0.0078125

Als we de resultaten toevoegen, krijgen we:

0.25 + 0.125 + 0.0625 + 0.0078125 = 0.4453

Als we onze operaties zouden blijven uitvoeren, zouden we steeds dichter bij de exacte waarde van 38, 45 komen

Conversie tussen octaal systeem en binair systeem

Nu gaan we kijken hoe we de conversie kunnen uitvoeren tussen twee systemen die niet de decimaal zijn, hiervoor nemen we het octale systeem en het binaire systeem en we zullen dezelfde procedure uitvoeren als in de vorige secties.

Zet getal om van binair naar octaal

De conversie tussen beide nummeringssystemen is heel eenvoudig omdat de basis van het octale systeem hetzelfde is als in het binaire systeem, maar verhoogd tot de macht van 3, 2 3 = 8. Dus op basis hiervan gaan we de binaire termen groeperen in groepen van drie, beginnend van rechts naar links en direct converteren naar een decimaal getal. Laten we het voorbeeld bekijken met het nummer 100110:

1 0 0 1 1 0
100 110
0, 2 2 = 4 0, 2 2 = 0 1 2 0 = 0 1 2 2 = 4 1 2 1 = 2 0, 2 2 = 0
4 6

We groeperen elke drie cijfers en doen de conversie naar decimalen. Het eindresultaat is 100110 = 46

Maar wat als we geen perfecte groepen van 3 hebben? Bijvoorbeeld 1001101, we hebben twee groepen van 3 en één van 1, laten we eens kijken hoe we verder moeten gaan:

0 0 1 0 0 1 1 0 1
001 100 110
0, 2 2 = 0 0, 2 2 = 0 1 2 0 = 1 0, 2 2 = 0 0, 2 2 = 0 1 2 0 = 1 1 2 2 = 4 1 2 = 0 1 2 0 = 1
1 1 5

Na de procedure nemen we de groepen aan de rechterkant van de term en wanneer we het einde bereiken, vullen we zoveel nullen in als nodig is. In dit geval hebben we er twee nodig om de laatste groep te voltooien. Dus 1001101 = 115

Zet octaal getal om in binair

Welnu, de procedure is net zo eenvoudig als het tegenovergestelde doen, dat wil zeggen van binair naar decimaal gaan in groepen van 3. Laten we het eens bekijken met het getal 115

Waarde 1 1 5
Divisie ÷ 2 = 0 0 0 ÷ 2 = 0 0 0 ÷ 2 = 2 ÷ 2 = 1 -
Rust 1 0 0 1 0 0 1 0 1
Groep 001 001 101

Op deze manier zien we dat 115 = 001001101 of wat hetzelfde is 115 = 1001101

Conversie tussen octaal systeem en decimaal systeem

Nu gaan we kijken hoe we de procedure kunnen uitvoeren om van het octale getalsysteem naar de komma te gaan en vice versa. We zullen zien dat de procedure precies hetzelfde is als in het geval van het decimale en binaire systeem, alleen moeten we de basis wijzigen in 8 in plaats van 2.

We voeren de procedures rechtstreeks uit met termen met een fractioneel deel.

Decimaal getal omzetten in octaal

Na de procedure van de decimaal-binaire methode zullen we het uitvoeren met het voorbeeld van 238.32:

Hele deel. We delen door de basis, die 8 is:

Nummer 238 29 3
Divisie ÷ 8 = 29 ÷ 8 = 3 -
Rust 6 5 3

Decimaal deel, we vermenigvuldigen met de basis, dat is 8:

Nummer 0, 32 0, 56 0, 48 0, 84 0.72
Vermenigvuldigen * 8 = 2, 56 * 8 = 4, 48 * 8 = 3, 84 * 8 = 6, 72 * 8 = 5, 76
Hele deel 2 4 3 6 5

Het verkregen resultaat is als volgt: 238, 32 = 356, 24365…

Zet octaal getal om in decimaal

Laten we dan het tegenovergestelde doen. Laten we het octale getal 356.243 doorgeven aan de decimaal:

3 5 6 , 2 4 3
3 · 8 2 = 192 5, 8 1 = 40 6 · 2 0 = 6 2, 8-1 = 0, 25 4-8 -2 = 0, 0625 3-8-3 = 0.005893

Het resultaat is: 192 + 40 + 6, 0, 25 + 0, 0625 + 0, 005893 = 238, 318

Conversie tussen hexadecimaal systeem en decimaal systeem

We eindigen dan met het conversieproces tussen het hexadecimale nummeringssysteem en het decimale systeem.

Decimaal getal converteren naar hexadecimaal

Na de procedure van de decimaal-binaire en decimaal-octale methode zullen we het uitvoeren met het voorbeeld van 238.32:

Hele deel. We delen door de basis, die 16 is:

Nummer 238 14
Divisie ÷ 16 = 14 -
Rust E E

Decimaal deel, we vermenigvuldigen met de basis, dat is 16:

Nummer 0, 32 0, 12 0.92 0.72 0, 52
Vermenigvuldigen * 16 = 5, 12 * 16 = 1, 92 * 16 = 14, 72 * 16 = 11, 52 * 16 = 8, 32
Hele deel 5 1 E B 8

Het verkregen resultaat is als volgt: 238, 32 = EE, 51EB8…

Zet getal om van hexadecimaal naar decimaal

Laten we dan het tegenovergestelde doen. Laten we het hexadecimale getal EE, 51E doorgeven aan decimalen:

E E , 5 1 E
E16 1 = 224 E · 16 0 = 14 5, 16 -1 = 0, 3125 1, 16 -2 = 0, 003906 E16-3 = 0, 00341

Het resultaat is: 224 + 14, 0, 3125 + 0, 003906 + 0, 00341 = 238, 3198…

Dit zijn de belangrijkste manieren om de basis van het ene nummeringssysteem naar het andere te veranderen. Het systeem is toepasbaar op een systeem in elke basis en het decimale systeem, hoewel deze het meest worden gebruikt op het gebied van computers.

Mogelijk bent u ook geïnteresseerd in:

Als je vragen hebt, laat ze dan achter in de comments. We zullen je proberen te helpen.

Tutorials

Bewerkers keuze

Back to top button