Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Tecnología Industrial

Resta binaria

Podemos restar un número binario de otro usando las técnicas estándar adaptadas para números decimales (resta de cada par de bits, de derecha a izquierda, "tomando prestado" según sea necesario de los bits a la izquierda). Sin embargo, si podemos aprovechar la técnica ya familiar (y más fácil) de la suma binaria para restar, sería mejor.

Como acabamos de aprender, podemos representar números binarios negativos utilizando el método del "complemento a dos" y un bit de ponderación negativa. Aquí, usaremos esos números binarios negativos para restar mediante la suma.

Aquí hay un problema de muestra:

 Resta:7  10  - 5  10  Equivalente de suma:7  10  + (-5  10  ) 

Si todo lo que tenemos que hacer es representar siete y cinco menos en forma binaria (complemento a dos), todo lo que necesitamos son tres bits más el bit de peso negativo:

 positivo siete =0111  2  cinco menos =1011  2  

Ahora, sumámoslos juntos:

. 1111 <--- Llevar bits . 0111 . + 1011 . ------ . 10010 . | . Descartar un poco más . . Respuesta =0010  2  

Dado que ya hemos definido nuestro campo de bits numéricos como tres bits más el bit de peso negativo, el quinto bit en la respuesta (1) se descartará para darnos un resultado de 0010 2 , o dos positivos, que es la respuesta correcta.

Otra forma de entender por qué descartamos ese bit extra es recordar que el bit más a la izquierda del número más bajo posee un peso negativo, en este caso igual a menos ocho.

Cuando sumamos estos dos números binarios, lo que realmente estamos haciendo con los MSB es restar el MSB del número inferior del MSB del número superior. En la resta, uno nunca "lleva" un dígito o bit al siguiente peso de posición de la izquierda.

Probemos con otro ejemplo, esta vez con números más grandes. Si queremos agregar -25 10 a 18 10 , primero debemos decidir qué tan grande debe ser nuestro campo de bits binarios.

Para representar el número más grande (valor absoluto) en nuestro problema, que es veinticinco, necesitamos al menos cinco bits, más un sexto bit para el bit de peso negativo. Comencemos por representar veinticinco positivos, luego busquemos el complemento a dos y pongámoslo todo junto en una numeración:

 +25  10  =011001  2  (mostrando los seis bits) Complemento de uno de 11001  2  =100110  2  Complemento a uno + 1 =complemento a dos =100111  2  -25  10  =100111  2  

Básicamente, representamos veinticinco negativos mediante el uso del bit de peso negativo (sexto) con un valor de treinta y dos negativos, más siete positivos (binario 111 2 ).

. 18  10  =010010  2  . . Ahora, sumámoslos y veamos qué obtenemos:. . 11 <--- llevar bits . 100111 . + 010010 . -------- . 111001 

Dado que no había bits "adicionales" a la izquierda, no hay bits para descartar. El bit más a la izquierda de la respuesta es un 1, lo que significa que la respuesta es negativa, en forma de complemento a dos, como debería ser. Al convertir la respuesta a forma decimal sumando todos los bits por sus respectivos valores de peso, obtenemos:

 (1 x -32  10  ) + (1 x 16  10  ) + (1 x 8  10  ) + (1 x 1  10  ) =-7  10  

De hecho -7 10 es la suma adecuada de -25 10 y 18 10 .

HOJAS DE TRABAJO RELACIONADAS:


Tecnología Industrial

  1. La electrónica como ciencia
  2. Configuración de un laboratorio doméstico
  3. Uso del voltímetro
  4. Uso del ohmímetro
  5. Un circuito muy simple
  6. Contador binario de 3 bits
  7. Numeración decimal versus binaria
  8. Numeración octal y hexadecimal
  9. Suma binaria
  10. Construcciones de contenedores para brazo en x86
  11. Primeros pasos con Go on PLCnext