Converteren naar decimaal met oplossing. di Onderwijscomplex

Opmerking 1

Als je een getal van het ene naar het andere getalstelsel wilt omrekenen, is het handiger om het eerst om te zetten naar het decimale getalstelsel en pas daarna van het decimale getalstelsel over te zetten naar een willekeurig ander getalstelsel.

Regels voor het converteren van getallen van elk getalsysteem naar decimaal

In de computertechnologie met behulp van machinaal rekenen speelt de omzetting van getallen van het ene getalstelsel naar het andere een belangrijke rol. Hieronder presenteren we de basisregels voor dergelijke transformaties (vertalingen).

    Bij het vertalen van een binair getal naar een decimaal getal, is het vereist om het binaire getal weer te geven als een polynoom, waarvan elk element wordt weergegeven als het product van een cijfer van het getal en de overeenkomstige macht van het basisgetal, in dit geval $2 $, en dan moet je het polynoom berekenen volgens de regels van decimale rekenkunde:

    $X_2=A_n \cdot 2^(n-1) + A_(n-1) \cdot 2^(n-2) + A_(n-2) \cdot 2^(n-3) + ... + A_2 \cdot 2^1 + A_1 \cdot 2^0$

Afbeelding 1. Tabel 1

voorbeeld 1

Converteer het getal $11110101_2$ naar het decimale talstelsel.

Beslissing. Met behulp van de bovenstaande tabel $1$ van graden van de basis $2$, stellen we het getal voor als een polynoom:

$11110101_2 = 1 \cdot 27 + 1 \cdot 26 + 1 \cdot 25 + 1 \cdot 24 + 0 \cdot 23 + 1 \cdot 22 + 0 \cdot 21 + 1 \cdot 20 = 128 + 64 + 32 + 16 + 0 + 4 + 0 + 1 = 245_(10)$

    Om een ​​getal om te zetten van octaal naar decimaal, moet je het weergeven als een polynoom, waarvan elk element wordt weergegeven als het product van een cijfer van het getal en de overeenkomstige macht van het basisgetal, in dit geval $8$, en dan je moet het polynoom berekenen volgens de regels van decimale rekenkunde:

    $X_8 = A_n \cdot 8^(n-1) + A_(n-1) \cdot 8^(n-2) + A_(n-2) \cdot 8^(n-3) + ... + A_2 \cdot 8^1 + A_1 \cdot 8^0$

Afbeelding 2. Tabel 2

Voorbeeld 2

Converteer het getal $75013_8$ naar het decimale talstelsel.

Beslissing. Met behulp van de bovenstaande tabel $2$ van graden van basis $8$, stellen we het getal voor als een polynoom:

$75013_8 = 7\cdot 8^4 + 5 \cdot 8^3 + 0 \cdot 8^2 + 1 \cdot 8^1 + 3 \cdot 8^0 = 31243_(10)$

    Om een ​​getal om te zetten van hexadecimaal naar decimaal, moet u het weergeven als een polynoom, waarvan elk element wordt weergegeven als het product van een cijfer van het getal en de overeenkomstige macht van het basisgetal, in dit geval $16$, en dan je moet het polynoom berekenen volgens de regels van decimale rekenkunde:

    $X_(16) = A_n \cdot 16^(n-1) + A_(n-1) \cdot 16^(n-2) + A_(n-2) \cdot 16^(n-3) + . .. + A_2 \cdot 16^1 + A_1 \cdot 16^0$

Afbeelding 3. Tabel 3

Voorbeeld 3

Converteer getal $FFA2_(16)$ naar een decimaal getallenstelsel.

Beslissing. Met behulp van de bovenstaande tabel van $3$ basismachten van $8$, stellen we het getal voor als een polynoom:

$FFA2_(16) = 15 \cdot 16^3 + 15 \cdot 16^2 + 10 \cdot 16^1 + 2 \cdot 16^0 =61440 + 3840 + 160 + 2 = 65442_(10)$

Regels voor het converteren van getallen van een decimaal talstelsel naar een ander

  • Om een ​​getal om te zetten van decimaal naar binair, moet het achtereenvolgens worden gedeeld door $2$ totdat er een rest is die kleiner is dan of gelijk is aan $1$. Een getal in het binaire systeem wordt weergegeven als een reeks van het laatste resultaat van deling en de rest van de deling in omgekeerde volgorde.

Voorbeeld 4

Converteer het getal $22_(10)$ naar het binaire getallenstelsel.

Beslissing:

Figuur 4

$22_{10} = 10110_2$

  • Om een ​​getal om te zetten van decimaal naar octaal, moet het achtereenvolgens worden gedeeld door $8$ totdat er een rest is die kleiner is dan of gelijk is aan $7$. Presenteer een getal in het octale talstelsel als een reeks cijfers van het laatste resultaat van deling en de rest van de deling in omgekeerde volgorde.

Voorbeeld 5

Converteer het getal $571_(10)$ naar het achttallig talstelsel.

Beslissing:

Figuur 5

$571_{10} = 1073_8$

  • Om een ​​getal om te zetten van decimaal naar hexadecimaal, moet het achtereenvolgens worden gedeeld door $16$ totdat er een rest is die kleiner is dan of gelijk is aan $15$. Druk een getal in hexadecimaal uit als een reeks cijfers van het laatste resultaat van de deling en de rest van de deling in omgekeerde volgorde.

Voorbeeld 6

Converteer het getal $7467_(10)$ naar een hexadecimaal getallenstelsel.

Beslissing:

Figuur 6

$7467_(10) = 1D2B_(16)$

    Om een ​​echte breuk om te zetten van een decimaal getalsysteem naar een niet-decimaal getal, moet het breukdeel van het geconverteerde getal worden vermenigvuldigd met het grondtal van het systeem waarnaar het moet worden geconverteerd. De fractie wordt in het nieuwe systeem gepresenteerd als hele delen van producten, te beginnen bij de eerste.

    Bijvoorbeeld: $0.3125_((10))$ in octaal zou eruit zien als $0.24_((8))$.

    In dit geval kunt u een probleem tegenkomen wanneer een eindige decimale breuk kan overeenkomen met een oneindige (periodieke) breuk in een niet-decimaal getallenstelsel. In dit geval hangt het aantal cijfers in de fractie die in het nieuwe systeem wordt weergegeven af ​​van de vereiste nauwkeurigheid. Er moet ook worden opgemerkt dat gehele getallen gehele getallen blijven, en echte breuken blijven breuken in elk getallenstelsel.

Regels voor het converteren van getallen van een binair getallenstelsel naar een ander

  • Om een ​​getal om te zetten van binair naar octaal, moet het worden verdeeld in drieklanken (drietallen van cijfers), beginnend met het minst significante cijfer, indien nodig, nullen toevoegen aan de hoogste drieklank, en vervolgens elke drieklank vervangen door het overeenkomstige achttallige cijfer volgens tabel 4.

Afbeelding 7. Tabel 4

Voorbeeld 7

Converteer het getal $1001011_2$ naar een octaal getalsysteem.

Beslissing. Aan de hand van tabel 4 vertalen we het getal van binair naar octaal:

$001 001 011_2 = 113_8$

  • Om een ​​getal om te zetten van binair naar hexadecimaal, moet het worden verdeeld in tetrads (vier cijfers), beginnend met het minst significante cijfer, indien nodig aangevuld met de senior tetrad met nullen, daarna moet elke tetrad worden vervangen door het overeenkomstige octale cijfer volgens Tabel 4.

2.3. Nummers omzetten van het ene nummerstelsel naar het andere

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

Het is mogelijk om een ​​algoritme te formuleren voor het omzetten van gehele getallen uit een stelsel met een grondtal p in een systeem met een basis q :

1. Druk het grondtal van het nieuwe getalstelsel uit in termen van het oorspronkelijke getalstelsel en voer alle volgende handelingen uit in het oorspronkelijke getalstelsel.

2. Voer consequent de deling uit van het gegeven getal en de resulterende gehele quotiënten door de basis van het nieuwe getallenstelsel totdat we een quotiënt krijgen dat kleiner is dan de deler.

3. De resulterende residuen, zijnde de cijfers van een getal in het nieuwe cijferstelsel, moeten in overeenstemming worden gebracht met het alfabet van het nieuwe cijferstelsel.

4. Stel een getal samen in het nieuwe getallenstelsel en schrijf het op vanaf de laatste rest.

Voorbeeld 2.12. Converteer decimaal getal 173 10 naar octaal talstelsel:

We krijgen: 173 10 \u003d 255 8

Voorbeeld 2.13. Converteer decimaal getal 173 10 naar hexadecimaal getallenstelsel:

We krijgen: 173 10 = AD 16 .

Voorbeeld 2.14. Converteer decimaal getal 11 10 naar het binaire getallenstelsel. De hierboven beschouwde volgorde van acties (vertaalalgoritme) wordt handiger als volgt weergegeven:

We krijgen: 11 10 \u003d 1011 2.

Voorbeeld 2.15. Soms is het handiger om het vertaalalgoritme in de vorm van een tabel te schrijven. Laten we het decimale getal 363 10 vertalen naar een binair getal.

Verdeler

We krijgen: 363 10 \u003d 101101011 2

2.3.2. Vertaling van breukgetallen van het ene getallenstelsel naar het andere

Het is mogelijk om een ​​algoritme te formuleren voor het omrekenen van een echte breuk met een grondtal p tot een breuk met een basis q:

1. Druk het grondtal van het nieuwe getalstelsel uit in termen van het oorspronkelijke getalstelsel en voer alle volgende handelingen uit in het oorspronkelijke getalstelsel.

2. Vermenigvuldig achtereenvolgens het gegeven getal 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 weergave van het getal is bereikt.

3. De resulterende gehele delen van de producten, zijnde de cijfers van een getal in het nieuwe talstelsel, worden in overeenstemming gebracht met het alfabet van het nieuwe talstelsel.

4. Stel het gebroken deel van het getal samen in het nieuwe getallenstelsel, beginnend met het gehele deel van het eerste product.

Voorbeeld 2.17. Converteer het getal 0.65625 10 naar het octale talstelsel.

We krijgen: 0,65625 10 \u003d 0,52 8

Voorbeeld 2.17. Converteer het getal 0.65625 10 naar het hexadecimale getallenstelsel.

x 16

We krijgen: 0.65625 10 \u003d 0.A8 1

Voorbeeld 2.18. Converteer decimaal 0,5625 10 naar het binaire getallenstelsel.

x 2

x 2

x 2

x 2

We krijgen: 0,5625 10 \u003d 0,1001 2

Voorbeeld 2.19. Converteren naar binair decimaal 0,7 10 .

Vanzelfsprekend kan dit proces oneindig doorgaan, waarbij steeds meer tekens worden gegeven 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 binair, enz. Zo'n eindeloos proces wordt op een bepaalde stap onderbroken, wanneer het van mening dat de vereiste nauwkeurigheid van de getalsweergave is verkregen.

2.3.3. Vertaling van willekeurige getallen

Vertaling van willekeurige getallen, d.w.z. getallen die gehele en gebroken delen bevatten, worden in twee fasen uitgevoerd: het gehele deel wordt afzonderlijk vertaald en het breukdeel wordt afzonderlijk vertaald. In het uiteindelijke record van het resulterende getal wordt het gehele deel gescheiden van de breukkomma (punt).

Voorbeeld 2.20. Converteer getal 17.25 10 naar binair getallenstelsel.

We krijgen: 17,25 10 \u003d 1001,01 2

Voorbeeld 2.21. Converteer het getal 124.25 10 naar het octale stelsel.

We krijgen: 124,25 10 \u003d 174,2 8

2.3.4. Getallen omzetten van een getalstelsel met grondtal 2 naar een getalstelsel met grondtal 2 n en vice versa

Vertaling van gehele getallen. Als het grondtal van het q-tallig talstelsel een macht van 2 is, dan kan de omzetting van getallen van het q-tallig getalstelsel naar het 2-tallig talstelsel en vice versa volgens eenvoudiger regels worden uitgevoerd. Om een ​​binair geheel getal te schrijven in een getallenstelsel met grondtal q=2 n, heb je nodig:

1. Verdeel een binair getal van rechts naar links in groepen van elk n cijfers.

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

Voorbeeld 2.22. Laten we het getal 101100001000110010 2 vertalen naar het octale getallenstelsel.

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

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

Voorbeeld 2.23. Het getal 1000000000111110000111 2 wordt geconverteerd naar het hexadecimale getallenstelsel.

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

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

Vertaling van gebroken getallen. Om een ​​gebroken binair getal te schrijven in een getallenstelsel met grondtal q=2 n, heb je nodig:

1. Verdeel een binair getal van links naar rechts in groepen van elk n cijfers.

2. Als er minder dan n cijfers in de laatste rechtergroep staan, dan moet deze rechts worden aangevuld met nullen tot het vereiste aantal cijfers.

3. Beschouw elke groep als een n-bits binair getal en schrijf het op met het corresponderende cijfer in het talstelsel met grondtal q=2 n .

Voorbeeld 2.24. Laten we het getal 0.10110001 2 vertalen naar het octale getallenstelsel.

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

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

Voorbeeld 2.25. Laten we het getal 0.100000000011 2 vertalen naar een hexadecimaal getallenstelsel. We verdelen het getal van links naar rechts in tetrads en schrijven het overeenkomstige hexadecimale cijfer onder elk van hen:

We krijgen de hexadecimale weergave van het oorspronkelijke getal: 0.803 16

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

1. Verdeel het gehele deel van dit binaire getal van rechts naar links en het breukdeel van links naar rechts in groepen van elk n cijfers.

2. Staan er minder dan n cijfers in de laatste linker en/of rechter groep, dan moeten deze links en/of rechts aangevuld worden met nullen tot het vereiste aantal cijfers;

3. Beschouw elke groep als een n-bits binair getal en schrijf het op als het corresponderende cijfer in het talstelsel met grondtal q=2 n

Voorbeeld 2.26. Laten we het getal 111100101.0111 2 vertalen naar het octale getallenstelsel.

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

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

Voorbeeld 2.27. Het getal 11101001000,11010010 2 wordt omgezet naar een hexadecimaal getalsysteem.

We verdelen de gehele en gebroken delen van het getal in notitieboekjes en onder elk ervan schrijven we het overeenkomstige hexadecimale cijfer:

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

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

Voorbeeld 2.28.Laten we het hexadecimale getal 4AC35 16 vertalen naar het binaire getallenstelsel.

Volgens het algoritme:

We krijgen: 1001010110000110101 2 .

Taken voor zelfontplooiing (Antwoorden)

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

Binair

octaal

Decimale

Hexadecimaal

2.39. Vul de tabel in, in elke regel waarvan hetzelfde breukgetal in verschillende getalstelsels moet worden geschreven.

Binair

octaal

Decimale

Hexadecimaal

2.40. Vul de tabel in, in elke regel waarvan hetzelfde willekeurige getal (het getal kan zowel een geheel getal als een breukdeel bevatten) moet worden geschreven in verschillende getalstelsels.

Binair

octaal

Decimale

Hexadecimaal

59 B

Om getallen snel om te zetten van decimaal naar binair, moet u de getallen "2 tot de macht" goed kennen. Bijvoorbeeld 2 10 \u003d 1024, enz. Hierdoor kunt u enkele voorbeelden voor vertaling in slechts enkele seconden oplossen. Een van deze taken is taak A1 uit de USE demo 2012 . U kunt het getal natuurlijk lang en vervelend delen door "2". Maar het is beter om anders te beslissen, waardoor kostbare tijd op het examen wordt bespaard.

De methode is heel eenvoudig. De essentie is dit: als het om te rekenen getal uit het decimale stelsel gelijk is aan het getal "2 tot de macht", dan bevat dit getal in het binaire stelsel het aantal nullen dat gelijk is aan de macht. We voegen een "1" toe voor deze nullen.

  • Laten we het getal 2 vertalen vanuit het decimale stelsel. 2=2 1 . Daarom bevat het getal in het binaire systeem 1 nul. We zetten "1" ervoor en we krijgen 10 2 .
  • Laten we 4 vertalen vanuit het decimale stelsel. 4=2 2 . Daarom bevat het getal in het binaire systeem 2 nullen. We zetten "1" vooraan en we krijgen 100 2.
  • Laten we 8 vertalen vanuit het decimale stelsel. 8=2 3 . Daarom bevat het getal in het binaire systeem 3 nullen. We zetten "1" vooraan en we krijgen 1000 2.


Evenzo voor andere nummers "2 tot de macht".

Als het te vertalen getal kleiner is dan het getal "2 tot de macht" met 1, dan bestaat dit getal in het binaire systeem alleen uit eenheden, waarvan het getal gelijk is aan de macht.

  • Laten we 3 vertalen vanuit het decimale stelsel. 3=2 2 -1. Daarom bevat het getal in het binaire systeem 2 eenheden. We krijgen 11 2.
  • Laten we 7 vertalen vanuit het decimale stelsel. 7=2 3 -1. Daarom bevat het getal in het binaire systeem 3 eenheden. We krijgen 111 2.

In de afbeelding geven de vierkanten de binaire weergave van het getal aan en aan de linkerkant is de decimale weergave roze.


De vertaling is vergelijkbaar voor andere getallen "2 tot de macht van -1".

Het is duidelijk dat de vertaling van getallen van 0 tot 8 snel of door deling kan worden gedaan, of gewoon hun weergave in het binaire systeem uit het hoofd kent. Ik heb deze voorbeelden gegeven zodat u het principe van deze methode begrijpt en deze kunt gebruiken om meer "indrukwekkende getallen" te vertalen, bijvoorbeeld om de getallen 127,128, 255, 256, 511, 512, enz.

U kunt aan dergelijke taken voldoen wanneer u een getal moet vertalen dat niet gelijk is aan het getal "2 tot de macht", maar er dichtbij. Het kan groter of kleiner zijn dan het getal "2 tot de macht". Het verschil tussen het vertaalde getal en het getal "2 tot de macht" moet klein zijn. Bijvoorbeeld tot 3. De weergave van getallen van 0 tot 3 in het binaire systeem moet gewoon bekend zijn zonder vertaling.

Als het getal groter is dan , lossen we het als volgt op:

We vertalen eerst het getal "2 tot de macht" naar het binaire stelsel. En dan voegen we het verschil toe tussen het getal "2 tot de macht" en het vertaalde getal.

Laten we bijvoorbeeld 19 vertalen vanuit het decimale stelsel. Het is groter dan het getal "2 tot de macht" met 3.

16=2 4 . 16 10 =10000 2 .

3 10 =11 2 .

19 10 =10000 2 +11 2 =10011 2 .

Als het getal kleiner is dan het getal "2 tot de macht", dan is het handiger om het getal "2 tot de macht van -1" te gebruiken. We besluiten zo:

We vertalen eerst het getal "2 tot de macht van -1" naar het binaire stelsel. En trek er dan het verschil tussen het getal "2 tot de macht van -1" en het vertaalde getal van af.

Laten we bijvoorbeeld 29 vertalen vanuit het decimale stelsel. Het is groter dan het getal "2 tot de macht 1" met 2. 29=31-2.

31 10 =11111 2 .

2 10 =10 2 .

29 10 =11111 2 -10 2 =11101 2

Als het verschil tussen het vertaalde getal en het getal "2 tot de macht" meer dan drie is, kunt u het getal in componenten opsplitsen, elk deel naar het binaire systeem converteren en optellen.

Vertaal bijvoorbeeld het getal 528 uit het decimale stelsel. 528=512+16. We vertalen afzonderlijk 512 en 16.
512=2 9 . 512 10 =1000000000 2 .
16=2 4 . 16 10 =10000 2 .
Laten we het nu stapelen: