Dividir nombres binaris

Autora: Roger Morrison
Data De La Creació: 6 Setembre 2021
Data D’Actualització: 1 Juliol 2024
Anonim
DIVISIÓN BINARIA - Ejercicio #1
Vídeo: DIVISIÓN BINARIA - Ejercicio #1

Content

La divisió de nombres binaris es pot resoldre mitjançant la divisió llarga, un mètode pràctic per ensenyar-vos el procediment o escriure un programa informàtic senzill. Com a alternativa, el mètode del complement de la resta de restes ofereix un enfocament que potser no coneixeu, encara que no s’utilitza realment en programació. Els llenguatges de màquina solen utilitzar un algorisme d’estimació per obtenir una major eficiència, però no es descriuen aquí.

Per trepitjar

Mètode 1 de 2: utilitzar divisió llarga

  1. Torneu a passar per la divisió llarga decimal. Si ha passat un temps des que heu fet una divisió llarga amb nombres decimals regulars (base 10), torneu a revisar la base per obtenir el problema 172 ÷ 4. En cas contrari, ometeu-lo i aneu al següent pas per aprendre aquest procediment per al binari números.
    • Això dividend es divideix entre divisor, i la resposta és aquesta quocient.
    • Compareu el divisor amb el primer dígit del dividend. Si el divisor és el nombre més gran, seguiu afegint dígits al dividend fins que el divisor sigui el nombre més petit. (Per exemple, quan es calcula 172 ÷ 4, comparem 4 i 1, trobem que 4> 1 i després comparem 4 amb 17.)
    • Escriviu el primer dígit del quocient sobre l’últim dígit del dividend utilitzat per a la comparació. Després de comparar 4 i 17, observem que 4 va a 17 quatre vegades, de manera que escrivim 4 com a primer dígit del nostre quocient, per sobre de 7.
    • Multiplicar i restar per trobar la resta. Multipliqueu el quocient pel divisor, en aquest cas 4 x 4 = 16. Escriviu el 16 per sota de 17 i, a continuació, feu 17 - 16 per la resta, 1.
    • Repetiu. De nou comparem el divisor 4 amb el següent dígit, 1, notem que 4> 1 i "reduïm" el següent dígit del dividend, per comparar 4 amb 12. 4 va a 12 tres vegades sense cap resta, de manera que podem escriure 3 com a següent dígit del quocient. La resposta és 43.
  2. Creeu una configuració binària de divisió llarga. Suposem que fem servir 10101 ÷ 11. Escriviu-ho com a divisió llarga, amb 10101 com a dividend i 11 com a divisor. Deixeu espai a sobre per escriure el quocient i escriviu els càlculs a continuació.
  3. Compareu el divisor amb el primer dígit del dividend. Funciona de la mateixa manera que la divisió llarga decimal, però en realitat és molt més fàcil en forma binària. O no podeu dividir el nombre pel divisor (0), o bé el divisor encaixa una vegada (1):
    • 11> 1, de manera que 11 "no encaixa" 1. Escriviu un 0 com a primer dígit del quocient (a sobre del primer dígit del dividend).
  4. Ara agafeu el següent dígit i repetiu fins obtenir 1. Aquests són els passos següents del nostre exemple:
    • Reduïu el següent dígit del dividend. 11> 10. Escriviu un 0 al quocient.
    • Reduïu el següent dígit. 11 101. Escriu un 1 al quocient.
  5. Determineu la resta. com en una divisió llarga decimal, multiplicem el dígit que acabem de trobar (1) pel divisor (11) i escrivim el resultat a sota del nostre dividend en una línia amb el dígit que acabem de calcular. En forma binària ho podem fer més ràpidament, perquè 1 x el divisor sempre és igual al divisor:
    • Escriviu el divisor a sota del dividend. Aquí escrivim això com a 11 sota els tres primers dígits (101) del dividend.
    • Calculeu 101 - 11 per a la resta, 10. Reviseu com restar nombres binaris si no ho recordeu.
  6. Continueu fins que es resolgui el problema. Porteu el següent dígit del divisor a la resta següent per obtenir 100. Com que 11 100, escriviu un 1 com a següent dígit del quocient. Continueu resolent el problema com abans:
    • Escriu 11 per sota de 100 i resta aquests números per obtenir 1.
    • Baixeu l'últim dígit del dividend i obtindreu 11 per obtenir la resposta.
    • 11 = 11, així que escriviu 1 com a darrer dígit del quocient (la resposta).
    • No hi ha cap resta, de manera que el problema s'ha completat. La resposta és 00111o, més simplement, 111.
  7. Afegiu un punt radix si cal. De vegades el resultat no és un nombre enter. Si encara teniu una resta després d'utilitzar l'últim dígit, afegiu un ".0" al dividend i un "." al vostre quocient perquè pugueu baixar un número més i continuar. Continueu fent això fins que arribeu a la precisió desitjada i, a continuació, finalitzeu la resposta. En paper, podeu arrodonir ometent el 0 o, si l'últim dígit és un 1, traieu-lo i afegiu 1 a l'últim dígit. Quan programeu, utilitzeu un dels algoritmes d’arrodoniment estàndard per evitar errors en convertir entre nombres binaris i decimals.
    • La divisió de nombres binaris sovint comporta la repetició de decimals, més sovint que els que es produeixen en format decimal.
    • A això es fa referència amb el terme més general "punt radix" que trobeu en qualsevol sistema numèric, perquè només trobeu el "punt decimal" dins del sistema decimal.

Mètode 2 de 2: utilitzar el mètode del complement

  1. Comprendre la idea bàsica. Una manera de resoldre divisions, per a qualsevol base, és restar restant el divisor del dividend, després la resta, comptant quantes vegades es pot seguir fent abans d’arribar a un nombre negatiu. Heus aquí un exemple per a la base 10, el problema 26 ÷ 7:
    • 26-7 = 19 (restat 1 vegada)
    • 19-7 = 12 (restat 2 vegades)
    • 12-7 = 5 (restat 3 vegades)
    • 5-7 = -2. Número negatiu, així que torna a pujar. La resposta és 3 amb la resta de 5. Tingueu en compte que aquest mètode no té en compte els decimals.
  2. Apreneu a restar mitjançant complements. Tot i que podeu aplicar fàcilment el mètode anterior a nombres binaris, també podem utilitzar un mètode més eficient que us estalviarà temps en programar divisions binàries. Això s’anomena mètode del complement binari. Aquí teniu la base, calculant entre 111 i 011 (assegureu-vos que tots dos números tinguin la mateixa longitud):
    • Trobeu el complement dels del segon terme, restant cada dígit de 1. Podeu fer-ho fàcilment amb nombres binaris establint cada 1 a 0 i cada 0 a 1. En el nostre exemple, 011 passa a ser 100.
    • Afegiu 1 al resultat: 100 + 1 = 101. Això s’anomena complement de 2. Ara considerarem una resta com una suma. L’essència és que tractem el problema com si afegíssim un nombre negatiu, en lloc de restar un nombre positiu, després de completar el procediment.
    • Afegiu el resultat al primer terme. Resol l’addició: 111 + 101 = 1100.
    • Ometeu el primer dígit (dígit de transport). Traieu el primer dígit de la vostra resposta per obtenir el resultat final. 1100 → 100.
  3. Combineu els dos conceptes anteriors. Ara ja sabeu com funciona el mètode de resta per resoldre sumes de divisió i el mètode del complement 2 per resoldre sumes de resta.Podeu combinar els dos en un sol mètode per resoldre sumes de divisió, seguint els passos següents. Si voleu, podeu intentar esbrinar-ho vosaltres mateixos abans de continuar.
  4. Resteu el divisor del dividend sumant el complement de 2. Fem el problema: 100011 ÷ 000101. El primer pas és resoldre 100011 - 000101, mitjançant el mètode del complement 2, de manera que sumi:
    • Complement de 2 de 000101 = 111010 + 1 = 111011
    • 100011 + 111011 = 1011110
    • Ometeu el primer dígit (el transport) → 011110
  5. Afegiu-ne 1 al quocient. En un programa d'ordinador, aquest és el punt en què augmenteu el quocient en 1. En paper, anoteu una nota en algun racó on no desordenarà la resta del vostre treball. Hem fet una resta amb èxit una vegada, de manera que el quocient fins ara és 1.
  6. Repetiu-ho restant el divisor de la resta. El resultat del nostre darrer càlcul és la resta que queda després que el divisor "entri" una vegada. Continueu sumant el complement 2 del divisor i restant el carry. Afegiu 1 al quocient cada vegada i continueu fins que obtingueu una resta igual al vostre divisor més petit:
    • 011110 + 111011 = 1011001 → 011001 (quocient 1 + 1 = 10)
    • 011001 + 111011 = 1010100 → 010100 (quocient 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 és inferior a 101, de manera que ara podem parar. El quocient 111 és la resposta al problema parcial. La resta és el resultat final de la nostra resta, en aquest cas 0 (sense descans).

Consells

  • Cal tenir en compte les instruccions d'augment, disminució o apilament abans d'aplicar un càlcul binari a un conjunt d'instruccions de màquina.
  • El mètode de resta del complement de 2 no funciona si els números consisteixen en un nombre diferent de dígits. Afegiu zeros addicionals al nombre més petit per resoldre-ho.
  • Ignoreu el dígit signat en números binaris signats abans de fer el càlcul, excepte quan intenteu determinar si una resposta és positiva o negativa.