Hvordan dele binære tall

Forfatter: Mark Sanchez
Opprettelsesdato: 2 Januar 2021
Oppdater Dato: 1 Juli 2024
Anonim
Grounding (Earthing) Systems
Video: Grounding (Earthing) Systems

Innhold

Binære tall kan deles inn i kolonner for bedre å forstå selve prosessen eller for å skrive et enkelt dataprogram. Du kan også bruke komplementmetoden, som sjelden brukes i programmering. Vanligvis bruker maskinspråk en scoringsalgoritme for å være mer effektiv, men dette er ikke hva denne artikkelen handler om.

Trinn

Metode 1 av 2: Lang divisjon

  1. 1 Del etter kolonne to desimaltall. Hvis du har glemt lang divisjon, deler du to desimaltall (basis 10): 172 ÷ 4. Hvis lang divisjon er flott, gå til neste trinn for å lære å dele binære tall.
    • Utbytte delt på deler og det viser seg privat.
    • Sammenlign divisoren med det første sifferet i utbyttet. Hvis divisoren er større enn dette sifferet, må du sammenligne divisoren med to sifre i utbyttet, og så videre, til divisoren er mindre enn det aktuelle tallet. I vårt eksempel, sammenlign 4 og 1, merk at 4> 1, og sammenlign deretter 4 med 17.
    • Skriv det første sifferet i kvotienten under divisoren. Ved å sammenligne 4 og 17, vil du se at 17 ÷ 4 = 4 med resten, så skriv 4 som det første sifferet i kvotienten under divisoren (4).
    • Multipliser og trekk for å finne resten. Multipliser det første sifferet i kvoten med divisoren; i vårt eksempel: 4 x 4 = 16. Skriv 16 under 17, og trekk deretter 17 - 16 for å finne resten av 1.
    • Gjenta sammenligningen. Sammenlign divisor 4 med resten av 1, merk at 4> 1, og "bær" neste siffer i utbyttet for å sammenligne 4 med 12. Siden 12 ÷ 4 = 3 uten rest, så skriv 3 som det andre sifferet i kvoten. Det endelige svaret er 43.
  2. 2 Kolonne deler to binære tall. For eksempel 10101 ÷ 11. Her er 10101 utbyttet og 11 er divisoren. La det være nok plass til beregninger.
  3. 3 Sammenlign divisoren med det første sifferet i utbyttet. Når det gjelder binære tall, er dette lettere å gjøre enn med desimaltall: enten er tallet ikke delbart med divisoren, og vi skriver 0, eller så er det delt og vi skriver 1.
    • 11> 1, så 1 kan ikke deles med 11. Skriv 0 som det første sifferet i kvotienten (under divisoren).
  4. 4 Fortsett å sammenligne divisortallene til du får 1. I vårt eksempel:
    • Sammenlign divisoren med de to sifrene i utbyttet. 11> 10. Skriv 0 som det andre sifferet i kvotienten.
    • Sammenlign divisoren med de tre sifrene i utbyttet. 11 101. Skriv 1 som det tredje sifferet i kvotienten.
  5. 5 Beregn resten. Multipliser det funnet sifferet (1) med divisoren (11) og skriv resultatet under utbyttet (nemlig under de tilsvarende sifrene). Vær oppmerksom på at multiplisering av 1 med en divisor alltid resulterer i en divisor.
    • Skriv divisoren under utbyttet. I vårt eksempel skriver du 11 under de tre første sifrene (101) i utbyttet.
    • Trekk fra 101 - 11 for å få resten av 10. Hvis du ikke husker hvordan du trekker binære tall, kan du lese denne artikkelen.
  6. 6 Gjenta de beskrevne trinnene til du løser problemet. Legg det neste sifferet i utbyttet til resten for å få 100. Siden 11 100 skriver du 1 som det fjerde sifferet i kvotienten. Ytterligere beregninger:
    • skriv 11 under 100 og trekk for å få resten av 1;
    • legg til det siste sifferet i utbyttet til resten for å få 11;
    • 11 = 11, så skriv 1 som siste siffer i kvoten.
    • Det er ingen rest, så problemet er løst. Svar: 00111 eller bare 111.
  7. 7 Legg til et desimaltegn (om nødvendig). Noen ganger er resultatet ikke et heltall. Hvis du, etter at du har brukt det siste sifferet i utbyttet, får en rest, legger du ", 0" til utbyttet og "," til kvoten, for å "rive" det neste sifferet og fortsetter beregningen. Gjenta denne prosessen til du får resultatet du ønsker, og avslutt deretter svaret ditt. For å avrunde resultatet, bli kvitt siste 0, eller hvis det siste sifferet er 1, slipp det og legg 1 til det nye siste sifferet. Når du programmerer, følger du en av standardavrundingsalgoritmene for å unngå feil ved konvertering mellom binære og desimaltall.
    • Deling av to binære tall kan resultere i en gjentakende brøkdel; dette skjer oftere enn når man deler desimaltall.
    • Vær oppmerksom på at desimaltegnet ikke bare brukes i desimal, men også i binær notasjon.

Metode 2 av 2: Kosttilskudd

  1. 1 Forstå de grunnleggende prinsippene. For å dele to tall (både desimal og binær), kan du trekke divisoren fra utbyttet og deretter suksessivt trekke divisoren fra resten til du får et negativt tall; i dette tilfellet må du telle hvor mange subtraksjoner som er utført. For eksempel, beregne 26 ÷ 7:
    • 26 - 7 = 19 (1 subtraksjon)
    • 19 - 7 = 12 (2)
    • 12 - 7 = 5 (3)
    • 5 - 7 = -2. Et negativt tall, så du trenger ikke trekke fra ytterligere. Svar: 3 med resten av 5. Legg merke til at denne metoden ikke beregner brøkdelen av svaret.
  2. 2 Forstå det grunnleggende i tilleggsmetoden. Metoden ovenfor kan brukes på binære tall, eller du kan bruke en mer effektiv metode som sparer tid når du programmerer delingen av binære tall. Denne metoden kalles komplementmetoden. For eksempel, trekk fra 111 - 011 (begge tallene må ha samme antall sifre):
    • Finn komplementet til det andre tallet. For å gjøre dette, trekker du hvert siffer i dette tallet fra 1. I binært er det bare å erstatte 1 med 0 og 0 med 1. I vårt eksempel blir 011 100.
    • Legg 1: 100 + 1 = 101 til resultatet ditt. Denne prosessen kalles tos komplement og lar deg erstatte subtraksjon med addisjon. I utgangspunktet er denne metoden at du legger til et negativt tall i stedet for å trekke fra et positivt tall.
    • Legg resultatet til det første tallet. Skriv ned og beregne tilleggsoperasjonen: 111 + 101 = 1100.
    • Slipp det første sifferet i resultatet for å få det endelige svaret: 1100 → 100.
  3. 3 Kombiner de to metodene beskrevet ovenfor. Den første metoden er den sekvensielle subtraksjonsmetoden og den andre er de tos komplementmetode. Disse metodene kan kombineres til én for å dele den med tall (prosessen med å kombinere metoder er beskrevet nedenfor). Hvis du vil, kan du prøve å finne ut hvordan du kombinerer de to metodene selv.
  4. 4 Trekk divisoren fra utbyttet, og erstatt subtraksjonen med tos komplementstillegg. For eksempel: 100011 ÷ 000101.Slå først subtraksjonen 100011 - 000101 til tillegg ved å bruke tos komplement:
    • To komplement: 000101 = 111010 + 1 = 111011
    • Tillegg: 100011 + 111011 = 1011110
    • Bli kvitt det første sifferet: 011110
  5. 5 Legg 1 til kvoten. I et dataprogram er dette en streng hvor kvoten økes med en. Noter på papir for å unngå forvirring. Du har trukket fra en gang, så kvoten er 1 på dette tidspunktet.
  6. 6 Gjenta den beskrevne prosessen. For å gjøre dette, trekker du divisoren fra resten. Resten er resultatet av den siste beregningen. Erstatt subtraksjonen med addisjon: legg til de to komplementdeleren i resten, og kvitt deretter det første sifferet i resultatet. Etter hver subtraksjon, legg til 1 i kvoten. Gjenta prosessen ovenfor til resten er lik eller mindre enn divisoren:
    • 011110 + 111011 = 1011001 → 011001 (kvotient 1 + 1 = 10)
    • 011001 + 111011 = 1010100 → 010100 (kvotient 10 + 1 = 11)
    • 010100 + 111011 = 1001111 → 001111 (11+1=100)
    • 001111 + 111011 = 1001010 → 001010 (100+1=101)
    • 001010 + 111011 = 10000101 → 0000101 (101+1=110)
    • 0000101 + 111011 = 1000000 → 000000 (110+1=111)
    • 0 er mindre enn 101, så det er ikke nødvendig å beregne videre. Privat 111 er det endelige resultatet av divisjonsoperasjonen. Resten er det endelige resultatet av subtraksjonen; i vårt eksempel er det 0 (ingen rest).

Tips

  • Ignorer tegnbiten i signerte binære tall med mindre du trenger å vite om resultatet er positivt eller negativt.
  • De to komplementmetoden gjelder ikke hvis tallene inneholder forskjellige tall. I dette tilfellet legger du til det tilsvarende tallet 0 i det nedre tallet (til venstre).
  • Instruksjonene for å øke, redusere eller pope stabelen må vurderes før du bruker binære operasjoner på maskininstruksjoner.