Converteer binair getal online naar decimaal. Hoe om te zetten van binair naar decimaal

2.3. Getallen omzetten van het ene getalsysteem naar het andere

2.3.1. Gehele getallen omzetten van het ene getalsysteem naar het andere

Het is mogelijk een algoritme te formuleren voor het converteren van gehele getallen uit een radixsysteem P tot een systeem met een basis Q :

1. Druk de basis van het nieuwe getallenstelsel uit in getallen van het oorspronkelijke getalsysteem en al het andere de volgende acties produceren in het oorspronkelijke nummersysteem.

2. Deel het gegeven getal en de resulterende gehele quotiënten consistent door de basis van het nieuwe getalsysteem totdat we een quotiënt verkrijgen dat kleiner is dan de deler.

3. De resulterende resten, die cijfers zijn van het getal in het nieuwe getallenstelsel, worden in overeenstemming gebracht met het alfabet van het nieuwe getallenstelsel.

4. Stel een getal samen in het nieuwe getalsysteem en schrijf het op, beginnend bij de laatste rest.

Voorbeeld 2.12. Converteer het decimale getal 173 10 naar een octaal getalsysteem:

We krijgen: 173 10 =255 8

Voorbeeld 2.13. Converteer het decimale getal 173 10 naar een hexadecimaal getalsysteem:

We krijgen: 173 10 = 16 n.Chr.

Voorbeeld 2.14. Converteer het decimale getal 11 10 naar het binaire getalsysteem. Het is handiger om de hierboven besproken reeks acties (vertaalalgoritme) als volgt weer te geven:

We krijgen: 11 10 =1011 2.

Voorbeeld 2.15. Soms is het handiger om het vertaalalgoritme in tabelvorm op te schrijven. Laten we het decimale getal 363 10 omzetten in een binair getal.

Verdeler

We krijgen: 363 10 =101101011 2

2.3.2. Breukgetallen omzetten van het ene getalsysteem naar het andere

Het is mogelijk een algoritme te formuleren voor het omrekenen van een juiste breuk met grondtal P in een breuk met grondtal Q:

1. Druk de basis van het nieuwe getallenstelsel uit met getallen uit het oorspronkelijke getallenstelsel en voer alle daaropvolgende acties uit in het oorspronkelijke getallenstelsel.

2. Vermenigvuldig consequent de gegeven getallen en de resulterende fractionele delen van de producten met de basis van het nieuwe systeem totdat het fractionele deel van het product gelijk wordt aan nul of de vereiste nauwkeurigheid van de getalrepresentatie is bereikt.

3. De resulterende gehele delen van de producten, die cijfers zijn van het getal in het nieuwe getallensysteem, moeten in overeenstemming worden gebracht met het alfabet van het nieuwe getallenstelsel.

4. Stel het breukdeel van een getal samen in het nieuwe getalsysteem, beginnend bij het gehele deel van het eerste product.

Voorbeeld 2.17. Converteer het getal 0,65625 10 naar het octale getalsysteem.

We krijgen: 0,65625 10 =0,52 8

Voorbeeld 2.17. Converteer het getal 0,65625 10 naar een hexadecimaal getalsysteem.

X 16

We krijgen: 0,65625 10 =0.A8 1

Voorbeeld 2.18. Converteer de decimale breuk 0,5625 10 naar het binaire getalsysteem.

X 2

X 2

X 2

X 2

We krijgen: 0,5625 10 =0,1001 2

Voorbeeld 2.19. Converteer de decimale breuk 0,7 10 naar het binaire getalsysteem.

Het is duidelijk dat dit proces voor onbepaalde tijd kan doorgaan, waardoor steeds meer nieuwe tekens ontstaan ​​in het beeld van het binaire equivalent van het getal 0,7 10. Dus in vier stappen krijgen we het getal 0,1011 2, en in zeven stappen het getal 0,1011001 2, wat een nauwkeurigere weergave is van het getal 0,7 10 in het binaire getalsysteem, enz. Zo'n eindeloos proces wordt op een bepaalde stap beëindigd, wanneer wordt aangenomen dat de vereiste nauwkeurigheid van de getalweergave is verkregen.

2.3.3. Vertaling van willekeurige getallen

Vertaling van willekeurige getallen, d.w.z. getallen die een geheel getal en een breukgedeelte bevatten, worden in twee fasen uitgevoerd. Het gehele gedeelte wordt afzonderlijk vertaald en het breukgedeelte afzonderlijk. Bij de uiteindelijke registratie van het resulterende getal wordt het gehele deel gescheiden van het breukdeel door een komma (punt).

Voorbeeld 2.20. Converteer het getal 17,25 10 naar het binaire getalsysteem.

We krijgen: 17,25 10 =1001,01 2

Voorbeeld 2.21. Converteer het getal 124,25 10 naar een octaal systeem.

We krijgen: 124,25 10 =174,2 8

2.3.4. Getallen converteren van grondtal 2 naar grondtal 2 n en omgekeerd

Vertaling van gehele getallen. Als de basis van het q-ary-getalsysteem een ​​macht van 2 is, kan de conversie van getallen van het q-ary-getalsysteem naar het 2-ary-getalsysteem en terug worden uitgevoerd volgens eenvoudigere regels. Om een ​​geheel binair getal in het getalsysteem met grondtal q=2 n te schrijven, heb je het volgende nodig:

1. Verdeel het binaire getal van rechts naar links in groepen van elk n cijfers.

2. Als de laatste linkergroep minder dan n cijfers heeft, moet deze aan de linkerkant worden aangevuld met nullen tot het vereiste aantal cijfers.

Voorbeeld 2.22. Het getal 101100001000110010 2 wordt omgezet naar het octale getalsysteem.

We verdelen het getal van rechts naar links in drieklanken en schrijven onder elk daarvan het overeenkomstige octale cijfer:

We krijgen de octale weergave van het oorspronkelijke nummer: 541062 8 .

Voorbeeld 2.23. Het getal 1000000000111110000111 2 wordt omgezet naar het hexadecimale getalsysteem.

We verdelen het getal van rechts naar links in tetrads en schrijven onder elk daarvan het overeenkomstige hexadecimale cijfer:

We krijgen de hexadecimale weergave van het oorspronkelijke nummer: 200F87 16.

Gebrekende getallen converteren. Om een ​​fractioneel binair getal te schrijven in een getallensysteem met grondtal q=2 n, heb je nodig:

1. Verdeel het binaire getal van links naar rechts in groepen van elk n cijfers.

2. Indien de laatste rechtse groep minder dan n cijfers heeft, dan moet deze rechts aangevuld worden met nullen tot het vereiste aantal cijfers.

3. Beschouw elke groep als een n-bit binair getal en schrijf het met het overeenkomstige cijfer in het getalsysteem met grondtal q=2 n.

Voorbeeld 2.24. Het getal 0,10110001 2 wordt omgezet naar het octale getalsysteem.

We verdelen het getal van links naar rechts in drieklanken en onder elk ervan schrijven we het overeenkomstige octale cijfer:

We krijgen de octale weergave van het oorspronkelijke getal: 0,542 8 .

Voorbeeld 2.25. Het getal 0,100000000011 2 wordt omgezet naar het hexadecimale getalsysteem. We verdelen het getal van links naar rechts in tetrads en schrijven onder elk daarvan het overeenkomstige hexadecimale cijfer:

We krijgen de hexadecimale weergave van het oorspronkelijke getal: 0,803 16

Vertaling van willekeurige getallen. Om een ​​willekeurig binair getal in het getalsysteem met grondtal q=2 n te schrijven, heb je nodig:

1. Verdeel het gehele deel van een bepaald binair getal van rechts naar links, en het breukdeel van links naar rechts in groepen van elk n cijfers.

2. Indien de laatste linker- en/of rechtergroep minder dan n cijfers telt, dan dienen deze links en/of rechts aangevuld te worden met nullen tot het benodigde aantal cijfers;

3. Beschouw elke groep als een n-bit binair getal en schrijf het met het overeenkomstige cijfer in het getalsysteem met grondtal q = 2 n

Voorbeeld 2.26. Laten we het getal 111100101.0111 2 omzetten naar het octale getalsysteem.

We verdelen de gehele en gebroken delen van het getal in drieklanken en schrijven onder elk ervan het overeenkomstige octale cijfer:

We krijgen de octale weergave van het oorspronkelijke getal: 745.34 8 .

Voorbeeld 2.27. Het getal 11101001000,11010010 2 wordt omgezet naar het hexadecimale getalsysteem.

We verdelen de gehele en fractionele delen van het getal in notitieboekjes en schrijven onder elk daarvan het overeenkomstige hexadecimale cijfer:

We krijgen de hexadecimale weergave van het oorspronkelijke getal: 748,D2 16.

Getallen uit getalstelsels met grondtal q=2 converterenn naar binair. Om een ​​willekeurig getal geschreven in het getalsysteem met grondtal q=2 n om te zetten in het binaire getalsysteem, moet je elk cijfer van dit getal vervangen door het n-cijferige equivalent in het binaire getalsysteem.

Voorbeeld 2.28 Laten we het hexadecimale getal 4AC35 16 omzetten naar het binaire getalsysteem.

Volgens het algoritme:

Wij krijgen: 1001010110000110101 2 .

Taken voor onafhankelijke voltooiing (antwoorden)

2.38. Vul de tabel in, in elke rij waarvan hetzelfde gehele getal in verschillende getalsystemen moet worden geschreven.

Binair

Octaal

Decimale

Hexadecimaal

2.39. Vul de tabel in, in elke rij waarvan hetzelfde breukgetal in verschillende getalsystemen moet worden geschreven.

Binair

Octaal

Decimale

Hexadecimaal

2.40. Vul de tabel in, in elke rij waarvan hetzelfde willekeurige getal (het getal kan zowel een geheel getal als een gebroken deel bevatten) in verschillende getalsystemen moet worden geschreven.

Binair

Octaal

Decimale

Hexadecimaal

59.B

Doel van de dienst. De dienst is ontworpen om nummers online van het ene nummersysteem naar het andere te converteren. Om dit te doen, selecteert u de basis van het systeem waarvan u het getal wilt converteren. U kunt zowel gehele getallen als getallen met komma's invoeren.

Nummer

Conversie van 10 2 8 16 nummersysteem. Converteren naar 2 10 8 16 nummersysteem.
Gebruik voor breuken 2 3 4 5 6 7 8 decimalen.

U kunt zowel hele getallen invoeren, bijvoorbeeld 34, als breuken, bijvoorbeeld 637.333. Voor fractionele getallen wordt de vertaalnauwkeurigheid achter de komma aangegeven.

Het volgende wordt ook gebruikt met deze rekenmachine:

Manieren om getallen weer te geven

Binair (binaire) getallen - elk cijfer betekent de waarde van één bit (0 of 1), het meest significante bit wordt altijd aan de linkerkant geschreven, de letter “b” wordt achter het getal geplaatst. Voor een gemakkelijke waarneming kunnen notitieboekjes worden gescheiden door spaties. Bijvoorbeeld 1010 0101b.
Hexadecimaal (hexadecimale) getallen - elke tetrad wordt weergegeven door één symbool 0...9, A, B, ..., F. Deze weergave kan op verschillende manieren worden aangeduid; hier wordt alleen het symbool “h” gebruikt na het laatste hexadecimaal cijfer. Bijvoorbeeld A5h. In programmateksten kan hetzelfde nummer worden aangeduid als 0xA5 of 0A5h, afhankelijk van de syntaxis van de programmeertaal. Er wordt een voorloopnul (0) toegevoegd aan de linkerkant van het belangrijkste hexadecimale cijfer dat door de letter wordt weergegeven om onderscheid te maken tussen cijfers en symbolische namen.
Decimale (decimale) getallen - elke byte (woord, dubbel woord) wordt weergegeven door een gewoon getal, en het decimale representatieteken (de letter “d”) wordt meestal weggelaten. De byte in de voorgaande voorbeelden heeft een decimale waarde van 165. In tegenstelling tot binaire en hexadecimale notatie is decimaal moeilijk om mentaal de waarde van elke bit te bepalen, wat soms nodig is.
Octaal (octale) getallen - elk drietal bits (deling begint bij het minst significante) wordt geschreven als een getal van 0 tot en met 7, met een “o” aan het einde. Hetzelfde nummer zou worden geschreven als 245o. Het octale systeem is lastig omdat de byte niet gelijk kan worden verdeeld.

Algoritme voor het converteren van getallen van het ene getalsysteem naar het andere

Het omzetten van hele decimale getallen naar een ander getalsysteem wordt uitgevoerd door het getal te delen door de basis van het nieuwe getallensysteem totdat de rest een getal blijft dat kleiner is dan de basis van het nieuwe getallenstelsel. Het nieuwe getal wordt geschreven als delingsresten, beginnend bij het laatste.
Het omzetten van een reguliere decimale breuk naar een andere PSS wordt uitgevoerd door alleen het fractionele deel van het getal te vermenigvuldigen met de basis van het nieuwe getalsysteem totdat alle nullen in het fractionele deel blijven of totdat de gespecificeerde vertaalnauwkeurigheid is bereikt. Als resultaat van elke vermenigvuldigingsoperatie wordt één cijfer van een nieuw getal gevormd, te beginnen met het hoogste getal.
Onjuiste breukvertaling wordt uitgevoerd volgens regels 1 en 2. De gehele en gebroken delen worden samen geschreven, gescheiden door een komma.

Voorbeeld nr. 1.



Conversie van 2 naar 8 naar 16 nummersysteem.
Deze systemen zijn veelvouden van twee, daarom wordt de vertaling uitgevoerd met behulp van een correspondentietabel (zie hieronder).

Om een ​​getal van het binaire getalsysteem naar het octale (hexadecimale) getalsysteem te converteren, is het noodzakelijk om het binaire getal vanaf de komma naar rechts en links te verdelen in groepen van drie (vier voor hexadecimale) cijfers, ter aanvulling van de buitenste groepen. eventueel met nullen. Elke groep wordt vervangen door het overeenkomstige octale of hexadecimale cijfer.

Voorbeeld nr. 2. 1010111010.1011 = 1.010.111.010.101.1 = 1272.51 8
hier 001=1; 010=2; 111=7; 010=2; 101=5; 001=1

Bij het converteren naar het hexadecimale systeem moet u het getal opdelen in delen van vier cijfers, waarbij u dezelfde regels volgt.
Voorbeeld nr. 3. 1010111010,1011 = 10.1011.1010,1011 = 2B12,13 HEX
hier 0010=2; 1011=B; 1010=12; 1011=13

Conversie van getallen van 2, 8 en 16 naar het decimale systeem wordt uitgevoerd door het getal in afzonderlijke getallen op te splitsen en het te vermenigvuldigen met de basis van het systeem (van waaruit het getal wordt vertaald), verheven tot de macht die overeenkomt met het serienummer in het getal dat wordt omgezet. In dit geval worden de getallen links van de komma genummerd (het eerste getal is genummerd 0) met oplopend, en naar rechts met afnemend (d.w.z. met een minteken). De verkregen resultaten worden opgeteld.

Voorbeeld nr. 4.
Een voorbeeld van conversie van binair naar decimaal getalsysteem.

1010010.101 2 = 1,2 6 +0,2 5 +1,2 4 +0,2 3 +0,2 2 +1,2 1 +0,2 0 + 1,2 -1 +0,2 - 2 + 1 2 -3 =
= 64+0+16+0+0+2+0+0,5+0+0,125 = 82,625 10 Een voorbeeld van conversie van octaal naar decimaal getalsysteem. 108,5 8 = 1*·8 2 +0·8 1 +8·8 0 + 5·8 -1 = 64+0+8+0,625 = 72,625 10 Een voorbeeld van conversie van hexadecimaal naar decimaal getalsysteem. 108,5 16 = 1,16 2 +0,16 1 +8,16 0 + 5,16 -1 = 256+0+8+0,3125 = 264,3125 10

We herhalen nogmaals het algoritme voor het converteren van getallen van het ene getalsysteem naar een ander PSS

  1. Vanuit het decimale getalsysteem:
    • deel het getal door de basis van het getalsysteem dat wordt vertaald;
    • vind de rest bij het delen van een geheel getal van een getal;
    • noteer alle restanten van de deling in omgekeerde volgorde;
  2. Van het binaire getalsysteem
    • Om naar het decimale getalsysteem te converteren, is het noodzakelijk om de som van de producten van grondtal 2 te vinden met de overeenkomstige cijfergraad;
    • Om een ​​getal naar octaal te converteren, moet je het getal in drieklanken opdelen.
      Bijvoorbeeld 1000110 = 1.000 110 = 106 8
    • Om een ​​getal van binair naar hexadecimaal te converteren, moet je het getal in groepen van 4 cijfers verdelen.
      Bijvoorbeeld 1000110 = 100 0110 = 46 16
Het systeem wordt positioneel genoemd, waarbij de betekenis of het gewicht van een cijfer afhangt van de locatie ervan in het getal. De relatie tussen de systemen wordt uitgedrukt in een tabel.
Correspondentietabel nummersysteem:
Binaire SSHexadecimale SS
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 A
1011 B
1100 C
1101 D
1110 E
1111 F

Tabel voor conversie naar octaal getalsysteem

Het resultaat is al ontvangen!

Nummersystemen

Er zijn positionele en niet-positionele nummersystemen. Het Arabische getallenstelsel, dat we in het dagelijks leven gebruiken, is positioneel, maar het Romeinse getallenstelsel niet. In positionele getalsystemen bepaalt de positie van een getal op unieke wijze de grootte van het getal. Laten we dit eens bekijken aan de hand van het voorbeeld van het getal 6372 in het decimale getalsysteem. Laten we dit getal van rechts naar links nummeren, beginnend bij nul:

Dan kan het getal 6372 als volgt worden weergegeven:

6372=6000+300+70+2 =6·10 3 +3·10 2 +7·10 1 +2·10 0 .

Het getal 10 bepaalt het getallenstelsel (in dit geval is dat 10). De waarden van de positie van een bepaald getal worden als machten beschouwd.

Beschouw het echte decimale getal 1287.923. Laten we het nummeren vanaf de nulpositie van het getal vanaf de komma naar links en rechts:

Dan kan het getal 1287.923 worden weergegeven als:

1287,923 =1000+200+80 +7+0,9+0,02+0,003 = 1,10 3 +2,10 2 +8,10 1 +7,10 0 +9,10 -1 +2,10 -2 +3· 10 -3.

Over het algemeen kan de formule als volgt worden weergegeven:

C n S n +C n-1 · S n-1 +...+C 1 · S 1 +C 0 ·s 0 +D -1 ·s -1 +D -2 ·s -2 +...+D -k ·s -k

waarbij Cn een geheel getal in positie is N, D -k - fractioneel getal op positie (-k), S- nummersysteem.

Een paar woorden over getalsystemen. Een getal in het decimale getalsysteem bestaat uit veel cijfers (0,1,2,3,4,5,6,7,8,9), in het octale getalsysteem bestaat het uit veel cijfers. (0,1, 2,3,4,5,6,7), in het binaire getalsysteem - uit een reeks cijfers (0,1), in het hexadecimale getalsysteem - uit een reeks cijfers (0,1 ,2,3,4,5,6, 7,8,9,A,B,C,D,E,F), waarbij A,B,C,D,E,F overeenkomen met de nummers 10,11, 12,13,14,15 In tabel Tab.1 worden getallen weergegeven in verschillende getalsystemen.

tafel 1
Notatie
10 2 8 16
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F

Getallen omzetten van het ene getalsysteem naar het andere

Om getallen van het ene getalsysteem naar het andere te converteren, is de eenvoudigste manier om het getal eerst naar het decimale getalsysteem te converteren en vervolgens van het decimale getalsysteem naar het gewenste getalsysteem te converteren.

Getallen van elk getalsysteem omzetten naar het decimale getallenstelsel

Met behulp van formule (1) kunt u getallen van elk getalsysteem omzetten naar het decimale getalsysteem.

Voorbeeld 1. Converteer het getal 1011101.001 van het binaire getalsysteem (SS) naar decimale SS. Oplossing:

1 ·2 6 +0 ·2 5 + 1 ·2 4+ 1 ·2 3+ 1 ·2 2 + 0 ·2 1+ 1 ·2 0 + 0 ·2 -1 + 0 ·2 -2 + 1 ·2 -3 =64+16+8+4+1+1/8=93,125

Voorbeeld2. Converteer het getal 1011101.001 van octaal getalsysteem (SS) naar decimaal SS. Oplossing:

Voorbeeld 3 . Converteer het getal AB572.CDF van een hexadecimaal getalsysteem naar decimaal SS. Oplossing:

Hier A-vervangen door 10, B- om 11 uur, C- om 12 uur, F- tegen 15.

Getallen omzetten van het decimale getallenstelsel naar een ander getalstelsel

Als u getallen van het decimale getallensysteem naar een ander getalsysteem wilt converteren, moet u het gehele deel van het getal en het breukgedeelte van het getal afzonderlijk converteren.

Het gehele deel van een getal wordt geconverteerd van decimale SS naar een ander getalsysteem door het gehele getal van het getal opeenvolgend te delen door de basis van het getalsysteem (voor binaire SS - door 2, voor 8-voudige SS - door 8, voor 16 -ary SS - met 16, etc. ) totdat een heel residu is verkregen, minder dan de basis CC.

Voorbeeld 4 . Laten we het getal 159 omzetten van decimale SS naar binaire SS:

159 2
158 79 2
1 78 39 2
1 38 19 2
1 18 9 2
1 8 4 2
1 4 2 2
0 2 1
0

Zoals blijkt uit Fig. 1 geeft het getal 159, gedeeld door 2, het quotiënt 79 en de rest 1. Verder geeft het getal 79, gedeeld door 2, het quotiënt 39 en de rest 1, enz. Als gevolg hiervan verkrijgen we, door een getal te construeren uit delingsresten (van rechts naar links), een getal in binaire SS: 10011111 . Daarom kunnen we schrijven:

159 10 =10011111 2 .

Voorbeeld 5 . Laten we het getal 615 omzetten van decimaal SS naar octaal SS.

615 8
608 76 8
7 72 9 8
4 8 1
1

Wanneer je een getal converteert van een decimale SS naar een octale SS, moet je het getal opeenvolgend delen door 8 totdat je een gehele rest krijgt die kleiner is dan 8. Als gevolg hiervan krijgen we bij het construeren van een getal uit delingsresten (van rechts naar links) een getal in octale SS: 1147 (Zie Afb. 2). Daarom kunnen we schrijven:

615 10 =1147 8 .

Voorbeeld 6 . Laten we het getal 19673 omzetten van het decimale getalsysteem naar hexadecimale SS.

19673 16
19664 1229 16
9 1216 76 16
13 64 4
12

Zoals uit figuur 3 blijkt, zijn de resten, door het getal 19673 achtereenvolgens door 16 te delen, 4, 12, 13, 9. In het hexadecimale getalsysteem komt het getal 12 overeen met C, en het getal 13 met D. Daarom is onze hexadecimaal getal is 4CD9.

Om reguliere decimale breuken (een reëel getal met een geheel getal van nul) om te zetten in een getallenstelsel met grondtal s, is het nodig om dit getal achtereenvolgens met s te vermenigvuldigen totdat het breukgedeelte een zuivere nul bevat, of we het vereiste aantal cijfers verkrijgen. . Als tijdens de vermenigvuldiging een getal met een ander geheel getal dan nul wordt verkregen, wordt met dit gehele getal geen rekening gehouden (ze worden opeenvolgend in het resultaat opgenomen).

Laten we het bovenstaande bekijken met voorbeelden.

Voorbeeld 7 . Laten we het getal 0,214 omzetten van het decimale getalsysteem naar binaire SS.

0.214
X 2
0 0.428
X 2
0 0.856
X 2
1 0.712
X 2
1 0.424
X 2
0 0.848
X 2
1 0.696
X 2
1 0.392

Zoals te zien is in figuur 4, wordt het getal 0,214 opeenvolgend vermenigvuldigd met 2. Als het resultaat van de vermenigvuldiging een getal is met een ander geheel deel dan nul, dan wordt het gehele deel apart geschreven (links van het getal), en het getal wordt geschreven met een geheel getal van nul. Als de vermenigvuldiging resulteert in een getal met een geheel getal van nul, dan wordt links ervan een nul geschreven. Het vermenigvuldigingsproces gaat door totdat het fractionele deel een zuiver nul bereikt of we het vereiste aantal cijfers verkrijgen. Door vetgedrukte getallen (Fig. 4) van boven naar beneden te schrijven, krijgen we het vereiste getal in het binaire getalsysteem: 0. 0011011 .

Daarom kunnen we schrijven:

0.214 10 =0.0011011 2 .

Voorbeeld 8 . Laten we het getal 0,125 omzetten van het decimale getalsysteem naar binaire SS.

0.125
X 2
0 0.25
X 2
0 0.5
X 2
1 0.0

Om het getal 0,125 om te zetten van decimaal SS naar binair, wordt dit getal opeenvolgend vermenigvuldigd met 2. In de derde fase is het resultaat 0. Het volgende resultaat wordt dus verkregen:

0.125 10 =0.001 2 .

Voorbeeld 9 . Laten we het getal 0,214 omzetten van het decimale getalsysteem naar hexadecimale SS.

0.214
X 16
3 0.424
X 16
6 0.784
X 16
12 0.544
X 16
8 0.704
X 16
11 0.264
X 16
4 0.224

Als we de voorbeelden 4 en 5 volgen, krijgen we de getallen 3, 6, 12, 8, 11, 4. Maar in hexadecimale SS komen de getallen 12 en 11 overeen met de getallen C en B. Daarom hebben we:

0,214 10 =0,36C8B4 16 .

Voorbeeld 10 . Laten we het getal 0,512 omzetten van het decimale getalsysteem naar octale SS.

0.512
X 8
4 0.096
X 8
0 0.768
X 8
6 0.144
X 8
1 0.152
X 8
1 0.216
X 8
1 0.728

Gekregen:

0.512 10 =0.406111 8 .

Voorbeeld 11 . Laten we het getal 159.125 omzetten van het decimale getalsysteem naar binaire SS. Om dit te doen, vertalen we afzonderlijk het gehele deel van het getal (Voorbeeld 4) en het fractionele deel van het getal (Voorbeeld 8). Als we deze resultaten verder combineren, krijgen we:

159.125 10 =10011111.001 2 .

Voorbeeld 12 . Laten we het getal 19673.214 omzetten van het decimale getalsysteem naar hexadecimale SS. Om dit te doen, vertalen we afzonderlijk het gehele deel van het getal (voorbeeld 6) en het fractionele deel van het getal (voorbeeld 9). Verder verkrijgen we door het combineren van deze resultaten.

Instructies

Video over het onderwerp

In het telsysteem dat we elke dag gebruiken, zijn er tien cijfers - van nul tot negen. Daarom heet het decimaal. Bij technische berekeningen, vooral die met betrekking tot computers, zijn er echter andere systemen, met name binair en hexadecimaal. Daarom moet je kunnen vertalen cijfers van één systemen aftellen naar een ander.

Je zal nodig hebben

  • - een stuk papier;
  • - potlood of pen;
  • - rekenmachine.

Instructies

Het binaire systeem is het eenvoudigste. Het heeft slechts twee cijfers: nul en één. Elk cijfer van binair getal cijfers, beginnend vanaf het einde, komt overeen met een macht van twee. Twee is gelijk aan één, in de eerste - twee, in de tweede - vier, in de derde - acht, enzovoort.

Stel dat je het binaire getal 1010110 krijgt. De eenheden daarin staan ​​op de tweede, derde, vijfde en zevende plaats. Daarom is dit getal in het decimale systeem 2^1 + 2^2 + 2^4 + 2^6 = 2 + 4 + 16 + 64 = 86.

Omgekeerd probleem - decimaal cijfers systeem. Laten we zeggen dat je het getal 57 hebt. Om dit te krijgen, moet je het getal achtereenvolgens door 2 delen en de rest opschrijven. Het binaire getal wordt van begin tot begin opgebouwd.
De eerste stap geeft je het laatste cijfer: 57/2 = 28 (rest 1).
Dan krijg je de tweede van het einde: 28/2 = 14 (de rest 0).
Verdere stappen: 14/2 = 7 (rest 0);
7/2 = 3 (rest 1);
3/2 = 1 (rest 1);
1/2 = 0 (rest 1).
Dit is de laatste stap omdat het resultaat van de deling nul is. Als resultaat kreeg je het binaire getal 111001.
Controleer je antwoord: 111001 = 2^0 + 2^3 + 2^4 + 2^5 = 1 + 8 + 16 + 32 = 57.

De tweede, die wordt gebruikt in computerzaken, is hexadecimaal. Het heeft geen tien, maar zestien cijfers. Om nieuwe conventies te vermijden, zijn de eerste tien cijfers hexadecimaal systemen worden aangegeven met gewone cijfers en de overige zes met Latijnse letters: A, B, C, D, E, F. Ze komen overeen met de decimale notatie cijfers m van 10 tot 15. Om verwarring te voorkomen wordt het in hexadecimaal geschreven getal voorafgegaan door het #-teken of de symbolen 0x.

Om een ​​getal te maken van hexadecimaal systemen, moet je elk cijfer vermenigvuldigen met de overeenkomstige macht van zestien en de resultaten bij elkaar optellen. Het getal #11A in decimale notatie is bijvoorbeeld 10*(16^0) + 1*(16^1) + 1*(16^2) = 10 + 16 + 256 = 282.

Omgekeerde conversie van decimaal systemen naar hexadecimaal gebeurt met dezelfde methode van resten als naar binair. Neem bijvoorbeeld het getal 10.000. Als je dit consequent deelt door 16 en de rest opschrijft, krijg je:
10000/16 = 625 (rest 0).
625/16 = 39 (rest 1).
39/16 = 2 (rest 7).
2/16 = 0 (rest 2).
Het resultaat van de berekening is het hexadecimale getal #2710.
Controleer je antwoord: #2710 = 1*(16^1) + 7*(16^2) + 2*(16^3) = 16 + 1792 + 8192 = 10000.

Overdracht cijfers van hexadecimaal systemen Het is veel gemakkelijker om naar binair te converteren. Het getal 16 is een twee: 16 = 2^4. Daarom kan elk hexadecimaal cijfer worden geschreven als een binair getal van vier cijfers. Als een binair getal minder dan vier cijfers bevat, voeg dan voorloopnullen toe.
Bijvoorbeeld #1F7E = (0001)(1111)(0111)(1110) = 1111101111110.
Controleer het antwoord: beide cijfers in decimale notatie zijn ze gelijk aan 8062.

Om te vertalen moet je het binaire getal opdelen in groepen van vier cijfers, beginnend bij het einde, en elke groep vervangen door een hexadecimaal cijfer.
11000110101001 wordt bijvoorbeeld (0011)(0001)(1010)(1001), wat in hexadecimale notatie gelijk is aan #31A9. De juistheid van het antwoord wordt bevestigd door conversie naar decimale notatie: beide cijfers zijn gelijk aan 12713.

Tip 5: Zo converteer je een getal naar binair

Vanwege het beperkte gebruik van symbolen is het binaire systeem het handigst voor gebruik in computers en andere digitale apparaten. Er zijn maar twee symbolen: 1 en 0, dus dit systeem gebruikt bij de werking van registers.

Instructies

Binair is positioneel, d.w.z. De positie van elk cijfer in een getal komt overeen met een bepaald cijfer, dat gelijk is aan twee tot de juiste macht. De graad begint bij nul en neemt toe naarmate u van rechts naar links beweegt. Bijvoorbeeld, nummer 101 is gelijk aan 1*2^0 + 0*2^1 + 1*2^2 = 5.

Octale, hexadecimale en decimale systemen worden ook veel gebruikt in positionele systemen. En als voor de eerste twee de tweede methode meer van toepassing is, dan is voor vertaling van beide van toepassing.

Beschouw een decimaal getal als een binair getal systeem door opeenvolgende deling door 2. Om een ​​decimaal getal om te zetten nummer 25 V

Degenen die het Unified State Exam afleggen en meer...

Het is vreemd dat ze studenten in computerwetenschappenlessen op scholen meestal de meest complexe en ongemakkelijke manier laten zien om getallen van het ene systeem naar het andere te converteren. Deze methode bestaat uit het achtereenvolgens delen van het oorspronkelijke getal door het grondtal en het verzamelen van de restanten van de deling in omgekeerde volgorde.

U moet bijvoorbeeld het getal 810 10 naar binair converteren:

We schrijven het resultaat in omgekeerde volgorde van onder naar boven. Het blijkt 81010 = 11001010102

Als je vrij grote getallen naar het binaire systeem moet converteren, neemt de deelladder de grootte aan van een gebouw met meerdere verdiepingen. En hoe kun je alle enen en nullen verzamelen zonder er één te missen?

Het Unified State Exam-programma in computerwetenschappen omvat verschillende taken die verband houden met het converteren van getallen van het ene systeem naar het andere. Meestal is dit een conversie tussen octale en hexadecimale systemen en binair. Dit zijn secties A1, B11. Maar er zijn ook problemen met andere nummersystemen, zoals in paragraaf B7.

Laten we om te beginnen twee tabellen in herinnering brengen die goed zijn om uit het hoofd te kennen voor degenen die informatica als hun toekomstige beroep kiezen.

Tabel met bevoegdheden van nummer 2:

2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 2 10
2 4 8 16 32 64 128 256 512 1024

Het wordt gemakkelijk verkregen door het vorige getal met 2 te vermenigvuldigen. Dus als je niet al deze getallen onthoudt, is de rest niet moeilijk te achterhalen uit de getallen die je je wel herinnert.

Tabel met binaire getallen van 0 tot 15 met hexadecimale weergave:

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
0 1 2 3 4 5 6 7 8 9 A B C D E F

De ontbrekende waarden zijn ook eenvoudig te berekenen door 1 op te tellen bij de bekende waarden.

Conversie van gehele getallen

Laten we dus beginnen door rechtstreeks naar het binaire systeem te converteren. Laten we hetzelfde nummer 810 10 nemen. We moeten dit getal ontbinden in termen die gelijk zijn aan machten van twee.

  1. We zijn op zoek naar de kracht van twee die het dichtst bij 810 ligt en deze niet overschrijdt. Dit is 2 9 = 512.
  2. Trek 512 af van 810 en we krijgen 298.
  3. Herhaal stap 1 en 2 totdat er geen enen of nullen meer over zijn.
  4. We hebben het zo: 810 = 512 + 256 + 32 + 8 + 2 = 2 9 + 2 8 + 2 5 + 2 3 + 2 1.
Dan zijn er twee methoden, u kunt ze allemaal gebruiken. Hoe gemakkelijk is het om te zien dat in elk getallensysteem het grondtal altijd 10 is. Het kwadraat van het grondtal zal altijd 100 zijn, de kubus 1000. Dat wil zeggen, de graad van het grondtal van het getallenstelsel is 1 (één), en er staan ​​net zoveel nullen achter als de graad.

Methode 1: Rangschik 1 volgens de cijfers van de indicatoren van de termen. In ons voorbeeld zijn dit 9, 8, 5, 3 en 1. De overige plaatsen bevatten nullen. We hebben dus de binaire weergave van het getal 810 10 = 1100101010 2. Eenheden worden op de 9e, 8e, 5e, 3e en 1e plaats geplaatst, geteld van rechts naar links vanaf nul.

Methode 2: Laten we de termen als machten van twee onder elkaar schrijven, te beginnen met de grootste.

810 =

Laten we nu deze stappen samenvoegen, zoals het vouwen van een ventilator: 1100101010.

Dat is alles. Tegelijkertijd is het probleem “hoeveel eenheden zijn er in de binaire notatie van het getal 810?” ook eenvoudig opgelost.

Het antwoord is zoveel als er termen (machten van twee) zijn in deze weergave. 810 heeft er 5.

Nu is het voorbeeld eenvoudiger.

Laten we het getal 63 omzetten naar het 5-tallige getallensysteem. De dichtstbijzijnde macht van 5 tot 63 is 25 (vierkant 5). Een kubus (125) zal al veel zijn. Dat wil zeggen, 63 ligt tussen het kwadraat van 5 en de kubus. Vervolgens selecteren we de coëfficiënt voor 5 2. Dit is 2.

We krijgen 63 10 = 50 + 13 = 50 + 10 + 3 = 2 * 5 2 + 2 * 5 + 3 = 223 5.

En tot slot: zeer eenvoudige vertalingen tussen 8- en hexadecimale systemen. Omdat hun grondtal een macht van twee is, gebeurt de vertaling automatisch, simpelweg door de getallen te vervangen door hun binaire representatie. Voor het octale systeem wordt elk cijfer vervangen door drie binaire cijfers, en voor het hexadecimale systeem door vier. In dit geval zijn alle voorloopnullen vereist, behalve het meest significante cijfer.

Laten we het getal 547 8 omzetten naar binair getal.

547 8 = 101 100 111
5 4 7

Nog één, bijvoorbeeld 7D6A 16.

7D6A 16 = (0)111 1101 0110 1010
7 D 6 A

Laten we het getal 7368 omzetten naar het hexadecimale systeem. Schrijf de getallen eerst in drietallen en deel ze vanaf het einde in viervoud: 736 8 = 111 011 110 = 1 1101 1110 = 1DE 16. Laten we het getal C25 16 omzetten naar het octale systeem. Eerst schrijven we de getallen in vieren en verdelen ze vervolgens vanaf het einde in drieën: C25 16 = 1100 0010 0101 = 110 000 100 101 = 6045 8. Laten we nu eens kijken naar het terug converteren naar decimalen. Het is niet moeilijk, het belangrijkste is om geen fouten te maken in de berekeningen. We breiden het getal uit tot een polynoom met machten van het grondtal en coëfficiënten daarvoor. Vervolgens vermenigvuldigen we en tellen we alles op. E68 16 = 14 * 16 2 + 6 * 16 + 8 = 3688. 732 8 = 7 * 8 2 + 3*8 + 2 = 474 .

Negatieve getallen omzetten

Hier moet u er rekening mee houden dat het getal wordt gepresenteerd in de twee-complementcode. Om een ​​getal in aanvullende code om te zetten, moet je de uiteindelijke grootte van het getal weten, dat wil zeggen waar we het in willen passen: in een byte, in twee bytes, in vier. Het belangrijkste cijfer van een getal betekent het teken. Als er 0 is, is het getal positief, als er 1 is, dan is het negatief. Aan de linkerkant wordt het nummer aangevuld met een tekencijfer. We beschouwen niet-ondertekende getallen niet; ze zijn altijd positief, en het belangrijkste deel ervan wordt als informatie gebruikt.

Om een ​​negatief getal om te zetten in het complement van een binair getal, moet je een positief getal naar een binair getal converteren en vervolgens de nullen in enen en de enen in nullen veranderen. Voeg vervolgens 1 toe aan het resultaat.

Laten we dus het getal -79 omzetten naar het binaire systeem. Het nummer kost ons één byte.

We converteren 79 naar het binaire systeem, 79 = 1001111. We voegen aan de linkerkant nullen toe aan de grootte van de byte, 8 bits, we krijgen 01001111. We veranderen 1 in 0 en 0 in 1. We krijgen 10110000. We voegen 1 toe aan het resultaat, we krijgen het antwoord 10110001. Onderweg beantwoorden we de Unified State Exam-vraag: "Hoeveel eenheden zijn er in de binaire representatie van het getal -79?" Het antwoord is 4.

Door 1 op te tellen bij de inverse van een getal wordt het verschil tussen de representaties +0 = 00000000 en -0 = 11111111 geëlimineerd. In de twee-complementcode worden ze op dezelfde manier geschreven als 00000000.

Gebrekende getallen converteren

Breukgetallen worden op de omgekeerde manier geconverteerd door hele getallen te delen door de basis, waar we helemaal aan het begin naar hebben gekeken. Dat wil zeggen, het gebruik van opeenvolgende vermenigvuldiging met een nieuwe basis met de verzameling van hele delen. De tijdens de vermenigvuldiging verkregen gehele delen worden verzameld, maar nemen niet deel aan de volgende bewerkingen. Alleen breuken worden vermenigvuldigd. Als het oorspronkelijke getal groter is dan 1, worden de gehele en gebroken delen afzonderlijk vertaald en vervolgens aan elkaar gelijmd.

Laten we het getal 0,6752 omzetten naar het binaire systeem.

0 ,6752
*2
1 ,3504
*2
0 ,7008
*2
1 ,4016
*2
0 ,8032
*2
1 ,6064
*2
1 ,2128

Het proces kan lange tijd worden voortgezet totdat we alle nullen in het fractionele deel hebben of de vereiste nauwkeurigheid is bereikt. Laten we voorlopig stoppen bij het zesde bord.

Het blijkt 0,6752 = 0,101011.

Als het getal 5,6752 was, dan is het in binair getal 101,101011.