Dijeljenje binarnih brojeva

Autor: Roger Morrison
Datum Stvaranja: 6 Rujan 2021
Datum Ažuriranja: 1 Srpanj 2024
Anonim
T02 V08 Binarno deljenje
Video: T02 V08 Binarno deljenje

Sadržaj

Dijeljenje binarnih brojeva može se riješiti korištenjem dugog dijeljenja, zgodne metode za podučavanje samog postupka ili pisanja jednostavnog računalnog programa. Alternativno, metoda dopunjavanja ponovljenog oduzimanja nudi pristup koji vam možda nije poznat, iako se zapravo ne koristi u programiranju. Strojni jezici obično koriste algoritam procjene za veću učinkovitost, ali oni ovdje nisu opisani.

Kročiti

Metoda 1 od 2: Korištenje duge podjele

  1. Ponovno prođite kroz decimalnu dugu podjelu. Ako je prošlo neko vrijeme otkako ste radili dugo dijeljenje s redovitim decimalnim brojevima (baza 10), ponovno pregledajte njegovu bazu radi problema 172 ÷ 4. Inače, preskočite ovo i prijeđite na sljedeći korak da biste naučili ovaj postupak za binarne brojevi.
    • To dividenda dijeli se s djelitelj, a odgovor je to količnik.
    • Usporedite djelitelj s prvom znamenkom u dividendi. Ako je djelitelj najveći broj, nastavite dodavati znamenke dividendi sve dok djelilac ne bude najmanji broj. (Na primjer, pri izračunavanju 172 ÷ 4 uspoređujemo 4 i 1, nalazimo da je 4> 1, a zatim uspoređujemo 4 sa 17.)
    • Napiši prvu znamenku količnika iznad posljednje znamenke dividende koja se koristi za usporedbu. Nakon usporedbe 4 i 17, primjećujemo da 4 ide u 17 četiri puta, pa 4 upisujemo kao prvu znamenku našeg količnika, iznad 7.
    • Pomnožite i oduzmite da biste pronašli ostatak. Pomnožite količnik s djeliteljem, u ovom slučaju 4 x 4 = 16. Napišite 16 ispod 17, a zatim 17 - 16 za ostatak, 1.
    • Ponoviti. Opet uspoređujemo djelitelj 4 sa sljedećom znamenkom, 1, primijetimo da je 4> 1 i "spuštamo" sljedeću znamenku dividende, da bismo umjesto toga usporedili 4 s 12. 4 ulazi u 12 tri puta bez ostatka, tako da možemo zapisati 3 kao sljedeću znamenku količnika. Odgovor je 43.
  2. Stvorite binarnu postavku dugog dijeljenja. Pretpostavimo da za primjer koristimo 10101 ÷ 11. Napiši ovo kao dugu podjelu, s 10101 kao dividendom i 11 kao djeliteljem. Ostavite prostor gore da napišete količnik, a svoje izračune napišite u nastavku.
  3. Usporedite djelitelj s prvom znamenkom dividende. To djeluje na isti način kao i decimalno dugo dijeljenje, ali je zapravo puno lakše u binarnom obliku. Ili ne možete podijeliti broj djeliteljem (0) ili se djelitelj jednom uklapa (1):
    • 11> 1, pa 11 "ne odgovara" 1. Napiši 0 kao prvu znamenku količnika (iznad prve znamenke dividende).
  4. Sada uzmite sljedeću znamenku i ponavljajte dok ne dobijete 1. Evo sljedećih nekoliko koraka iz našeg primjera:
    • Smanjite sljedeću znamenku dividende. 11> 10. U količnik upiši 0.
    • Smanjite sljedeću znamenku. 11 101. Zapiši 1 u količnik.
  5. Odredite ostalo. kao u decimalnoj dugoj podjeli, pomnožimo znamenku koju smo upravo pronašli (1) s djeliteljem (11), a rezultat zabilježimo ispod naše dividende na liniju sa znamenkom koju smo upravo izračunali. U binarnom obliku to možemo učiniti brže, jer je 1 x djelitelj uvijek jednak djelitelju:
    • Dionik napiši ispod dividende. Ovdje ovo zapisujemo kao 11 ispod prve tri znamenke (101) dividende.
    • Izračunajte 101 - 11 za ostatak, 10. Pregledajte kako oduzeti binarne brojeve ako se ne sjećate.
  6. Nastavite dok se problem ne riješi. Donesite sljedeću znamenku iz djelitelja u ostatak ispod kako biste dobili 100. Jer 11 100, pišete 1 kao sljedeću znamenku količnika. Nastavite rješavati problem kao i prije:
    • Napiši 11 ispod 100 i oduzmi ove brojeve da biste dobili 1.
    • Smanjite zadnju znamenku dividende i dobit ćete 11 za odgovor.
    • 11 = 11, pa napišite 1 kao zadnju znamenku količnika (odgovor).
    • Nema ostatka, pa je problem dovršen. Odgovor je 00111, ili jednostavnije, 111.
  7. Po potrebi dodajte radix točku. Rezultat ponekad nije cijeli broj. Ako nakon upotrebe posljednje znamenke i dalje imate ostatak, dodajte ".0" na dividendu i "." na svoj količnik kako biste mogli smanjiti još jedan broj i krenuti dalje. Nastavite tako dok ne postignete željenu točnost, a zatim dovršite svoj odgovor. Na papiru možete zaokružiti izostavljanjem 0 ili, ako je zadnja znamenka 1, uklanjanjem i dodavanjem 1 posljednjoj znamenci. Tijekom programiranja koristite jedan od standardnih algoritama za zaokruživanje kako biste izbjegli pogreške prilikom pretvaranja između binarnih i decimalnih brojeva.
    • Dijeljenje binarnih brojeva često rezultira ponavljanjem decimalnih mjesta, češće od onih koja se javljaju u decimalnom formatu.
    • Na to se odnosi općenitiji pojam "radix point" koji susrećete u bilo kojem brojevnom sustavu, jer "decimalnu točku" susrećete samo unutar decimalnog sustava.

Metoda 2 od 2: Uporaba metode komplementa

  1. Razumjeti osnovnu ideju. Jedan od načina rješavanja dijeljenja - za bilo koju bazu - jest da od dijeljenja nastavite oduzimati djelitelj, a zatim ostatak, računajući koliko puta to možete nastaviti prije nego što dođete do negativnog broja. Evo primjera za bazu 10, problem 26 ÷ 7:
    • 26 - 7 = 19 (oduzima se 1 put)
    • 19 - 7 = 12 (oduzeto 2 puta)
    • 12 - 7 = 5 (oduzima se 3 puta)
    • 5 - 7 = -2. Negativan broj, pa opet gore. Odgovor je 3 s ostatkom 5. Imajte na umu da ova metoda ne uzima u obzir decimalna mjesta.
  2. Naučite oduzimati pomoću dopuna. Iako gore navedenu metodu možete jednostavno primijeniti na binarne brojeve, mi možemo koristiti i učinkovitiju metodu koja će vam uštedjeti vrijeme pri programiranju binarnih dijeljenja. To se naziva metodom binarnog komplementa. Evo osnove, računajući 111 - 011 (pobrinite se da su oba broja jednake duljine):
    • Pronađite dodatak onima iz drugog pojma, oduzimajući svaku znamenku od 1. To možete lako učiniti binarnim brojevima postavljanjem svakih 1 na 0 i svakih 0 do 1. U našem primjeru 011 postaje 100.
    • Rezultatu dodajte 1: 100 + 1 = 101. To se naziva komplement dvojke. Sada ćemo oduzimanje smatrati dodavanjem. Suština je u tome da se prema problemu odnosimo kao da dodajemo negativan broj, umjesto da oduzimamo pozitivan broj, nakon završetka postupka.
    • Dodajte rezultat prvom izrazu. Riješi zbrajanje: 111 + 101 = 1100.
    • Izostavite prvu znamenku (prijenosnu znamenku). Uklonite prvu znamenku iz svog odgovora da biste dobili konačni rezultat. 1100 → 100.
  3. Kombinirajte dva navedena pojma. Sada znate kako djeluje metoda oduzimanja za rješavanje zbrojnih dijeljenja i metoda komplementa 2 za rješavanje zbrojnih oduzimanja.To dvoje možete kombinirati u jednu metodu rješavanja zbrojnih diobi, koristeći dolje navedene korake. Ako želite, možete pokušati sami to shvatiti prije nego što nastavite.
  4. Oduzmi djelitelj od dividende dodavanjem komplementa 2. Napravimo problem: 100011 ÷ 000101. Prvi korak je riješiti 100011 - 000101, koristeći metodu komplementa 2, tako da se zbroji:
    • Dopuna 2 od 000101 = 111010 + 1 = 111011
    • 100011 + 111011 = 1011110
    • Izostavite prvu znamenku (nosač) → 011110
  5. Količniku dodajte 1. U računalnom programu to je točka kada količnik povećavate za 1. Na papiru zabilježite negdje u kutu gdje neće pokvariti ostatak vašeg posla. Jednom smo uspješno oduzeli, tako da je količnik zasad 1.
  6. To ponovite oduzimanjem djelitelja od ostatka. Rezultat našeg posljednjeg izračuna je ostatak koji ostaje nakon što djelitelj jednom "uđe". Nastavite dodavati dodatak djelitelja 2 i oduzimati prijenos. Svaki puta dodajte 1 u količnik i nastavite dok ne dobijete ostatak jednak vašem manjem djelitelju:
    • 011110 + 111011 = 1011001 → 011001 (količnik 1 + 1 = 10)
    • 011001 + 111011 = 1010100 → 010100 (količnik 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 je manje od 101, tako da sada možemo stati. Količnik 111 je odgovor na djelomični problem. Ostatak je konačni rezultat našeg oduzimanja, u ovom slučaju 0 (bez odmora).

Savjeti

  • Upute za povećanje, smanjenje ili slaganje treba razmotriti prije primjene binarnog izračuna na skup strojnih uputa.
  • Metoda oduzimanja komplementa 2 ne djeluje ako se brojevi sastoje od različitog broja znamenki. Dodajte dodatne nule manjem broju da biste to riješili.
  • Prije izračuna zanemarite potpisanu znamenku u potpisanim binarnim brojevima, osim kada pokušavate utvrditi je li odgovor pozitivan ili negativan.