Förvandla ett binärt tal till ett decimaltal

Författare: John Pratt
Skapelsedatum: 14 Februari 2021
Uppdatera Datum: 28 Juni 2024
Anonim
Förvandla ett binärt tal till ett decimaltal - Råd
Förvandla ett binärt tal till ett decimaltal - Råd

Innehåll

Det binär (bas 2) nummersystem har två möjliga värden, vanligtvis representerade som 0 eller 1, för varje position i ett tal. Skillnaden med det decimal- (bas 10) nummersystem är att det finns tio möjliga värden (0,1,2,3,4,5,6,7,8 eller 9) för varje position.

För att undvika förvirring vid användning av olika nummersystem kan basen för ett nummer anges genom att ange det efter numret i prenumerationen. Till exempel kan det binära talet 10011100 skrivas med bas 2 genom att skriva det som 100111002. Decimaltal 156 kan skrivas som 15610 eller i sin helhet som "hundra femtiosex, bas 10".

Eftersom det binära systemet är dators maskinspråk måste allvarliga programmerare förstå hur man konverterar binära tal till decimaltal. Omvandling i motsatt riktning, från decimal till binär, är ofta svårare att lära sig först.


Obs: Detta handlar ENDAST om beräkningar och inte ASCII-översättningar.

Att gå

Metod 1 av 2: Positionssystemmetod

  1. I det här exemplet ska vi använda det binära numret 100110112 konvertera till decimal. Lista två krafter från höger till vänster. Börja med 2, detta har värdet "1". Öka exponenterna med 1 för varje effekt. Stoppa när antalet element i listan är lika med antalet siffror i det binära numret. Siffran i exemplet, 10011011, har 8 siffror, så listan ser ut så här: 128, 64, 32, 16, 8, 4, 2, 1
  2. Skriv det binära numret under listan.
  3. Anslut de binära siffrorna med styrkorna två med linjer. Rita linjer som förbinder varje binär siffra med motsvarande effekt 2 ovanför den. Börja med den första binära siffran, från höger, och fortsätt tills du har anslutit alla binära siffror och befogenheter.
  4. Inkludera alla siffror i det binära numret. Om siffran är 1, skriv motsvarande effekt 2 under raden, direkt under siffran. Om siffran är 0, skriv 0 under raden.
  5. Lägg till siffrorna under raden. Summan ska vara 155. Detta är decimalkvivalenten för det binära talet 10011011. Eller skrivet med basen i prenumeration:
  6. Om du upprepar den här metoden ofta kommer du att komma ihåg kraften hos två bättre så att du kan hoppa över steg 1.

Metod 2 av 2: Fördubbling

  1. Denna metod använder inte befogenheter. Detta gör det mer lämpligt om du vill konvertera större siffror utantill, eftersom du bara behöver komma ihåg delsumman.
  2. Börja med siffran längst till vänster om det angivna binära numret. För varje ytterligare siffra från vänster till höger, dubbla den tidigare summan och lägg den till den aktuella siffran. Till exempel för att få numret 10110012 för att konvertera till ett decimal tar vi följande steg:
  3. 1011001 → 0 * 2 + 1 = 1
  4. 1011001 → 1 * 2 + 0 = 2
  5. 1011001 → 2 * 2 + 1 = 5
  6. 1011001 → 5 * 2 + 1 = 11
  7. 1011001 → 11 * 2 + 0 = 22
  8. 1011001 → 22 * 2 + 0 = 44
  9. 1011001 → 44 * 2 + 1 = 8910
  10. Liksom positionssystemmetoden kan den här metoden anpassas för att konvertera från vilket talsystem som helst till ett decimaltal. Fördubbling används här eftersom basen är två. Om det angivna numret har en annan bas, använd det istället för 2. Om numret till exempel har en bas på 37, byter du * 2 med * 37. Resultatet blir alltid ett decimaltal (bas 10). :)

Tips

  • Öva mycket. Prova de binära siffrorna 110100012, 110012och 111100012. Deras decimalkvivalenter är 20910, 2510och 24110.
  • Kalkylatorn som medföljer Microsoft Windows kan också göra den här konverteringen åt dig, men om du är programmerare är det bättre att du förstår hur konverteringen fungerar. Alternativen för denna räknare kan hittas via "Visa" -menyn och sedan "Vetenskaplig" (eller "Programmerare"). Med Linux kan du använda galculator.

Varningar

  • Detta kan användas för osignerad binär (endast positiva tal), men inte signerad, flytande punkt eller fast punkt.