- Definición y descripción general del restador binario
- Medio sustractor
- Sustractor completo
- Sustractor de N bits
- Aplicaciones del restador binario
- VHDL implementación de medio restador y restador completo
Definición
Un restador es un dispositivo que resta dos números y produce el resultado. Un restador digital o binario es algo que se ocupa de la resta de dígitos binarios.
Se necesita un sustractor binario para el cálculo digital dentro de un dispositivo digital o una computadora digital. La forma más conveniente de restar números binarios sin signo es el método de complementos. Hay reglas para la resta binaria.
Las reglas de resta binaria se establecen de la siguiente manera. Aquí 0 es lógica baja y uno es lógica alta. A y B son dos entradas.
A | B | Y = A - B |
0 | 0 | 0 |
0 | 1 | 1 (pedir prestado 1) |
1 | 0 | 1 |
1 | 1 | 0 |
Ejemplo de operaciones de resta:
1101 – 1011
1101
1011 Mayo
= 0010
Entonces, la respuesta es 0010
Los métodos de complementos pueden realizar alternativamente sustracciones binarias para sustractores binarios. Hay dos tipos de métodos de complemento que se utilizan generalmente.
Complemento de A. 1
B. Complemento de 2
Pasos para realizar el complemento de 1:
- Encuentre el complemento a 1 del número que se va a restar.
- Ahora se suma el complemento de 1 al número del que se desea la resta.
- Donde hay un acarreo en la última posición, del resultado de la adición en el paso 2, el soporte se retira y se agrega al producto sin el acarreo para obtener el resultado final.
Tomemos un ejemplo: 1101-1011
Complemento a 1 de 1011 = 0100
Ahora, agregue 1101 con 0100
1101
+ 0100
= 1 0001
Como podemos ver, hay uno como carry, así que retiramos el carry y volvemos a añadir el carry con el resultado obtenido.
0001
+ 1
= 0010
Entonces, la respuesta a la resta es 0010
Para el método del complemento a 2
- Calcula el complemento a 2.
- El complemento ahora se suma con otro número.
- El acarreo es rechazado.
Tomemos un ejemplo: 1101-1011
El complemento a 2 de cualquier número se calcula realizando el complemento a 1 y sumándole 1.
Complemento a 2 de
Ahora, agregue 1101 con 0100
1101 + 0100 = 1 0001
Como podemos ver, hay uno como carry, así que retiramos el carry y volvemos a añadir el carry con el resultado obtenido.
0001 + = 1 0010
Entonces, la respuesta a la resta es 0010
Las computadoras digitales utilizan el método del complemento a 2 para los cálculos, ya que requiere menos transporte.
Los métodos de complemento en el sistema numérico decimal se conocen como método de complemento de 9 y 10.
Varios circuitos digitales implementan esta operación de resta. Son -
- Medio sustractor
- Sustractor completo
Un restador binario no solo realiza operaciones de suma, sino que también se usa en aplicaciones digitales. Decodificación y codificación de valores, cálculo del índice son algunas de sus aplicaciones.
Medio restador
Un medio restador binario es un sustractor binario que resta un bit de datos y produce el resultado. Tiene dos lados de entrada a través de los cuales suministramos los valores lógicos digitales, y tiene dos salidas a través de los cuales recibimos el impacto de la operación. El resultado se puede mostrar en un solo dígito. El trabajo muestra el número en la resta que tiene el mismo significado que los dígitos individuales restados. La otra salida muestra el bit prestado.
La tabla de verdad de medio resta
El funcionamiento del medio restador binario se muestra en la siguiente tabla de verdad.
A | B | Diferencias | Pedir Prestado |
0 | 0 | 0 | 0 |
0 | 1 | 1 | 1 |
1 | 0 | 1 | 0 |
1 | 1 | 0 | 0 |
Medio circuito sustractor
De la tabla de verdad, podemos concluir que las primeras tres filas pueden representar el resultado usando un solo dígito. En la segunda fila, el trabajo se describe utilizando dos números, ya que se tomó prestados como 1.
Diferencia = A′B + AB ′
Pedir prestado = A′B
¿Entonces
Diferencia = A XOR B
Pedir prestado = A ′ AND B
Necesitamos una puerta XOR, una puerta NOT y una puerta AND para implementar la lógica. La puerta XOR, NO la puerta, una puerta Y también se puede hacer usando puertas universales como NAND y NOR. Por lo tanto, se puede diseñar un medio restador utilizando solo puertas universales.
La siguiente imagen muestra A y B como entrada, D como diferencia y C como piden prestado.
Sustractor completo
Sustractor binario completo es otro tipo de Sustractor binario que proporciona el resultado de una operación de resta binaria. Cuando se restan dos números binarios, excepto el dígito menos significativo, hay un préstamo como Bi-1 y pedir prestado como Bi. El Subtractor completo está diseñado para manejar un préstamo para cada etapa. Así es como una orden completa supera la deficiencia de la mitad del sustractor de ejecutar el préstamo.
Una tabla de verdad de resta completa
Xi | Yi | Bi-1 | Di | Bi |
0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 1 | 1 |
0 | 1 | 0 | 1 | 1 |
0 | 1 | 1 | 0 | 1 |
1 | 0 | 0 | 1 | 0 |
1 | 0 | 1 | 0 | 0 |
1 | 1 | 0 | 0 | 0 |
1 | 1 | 1 | 1 | 1 |
Circuito de resta completo
Diferencia = A ′ B ′ Bin + AB ′ Bin′ + A ′ BBin′ + ABBin
Pedir prestado = A ′ Bin + A ′ B + BBin
Para implementar la expresión usando puertas lógicas, necesitamos simplificar aún más la palabra.
Diferencia = A ′ B ′ Bin + AB ′ Bin′ + A ′ BBin′ + ABBin
O, diferencia = Bin (A′B ′ + AB) + Bin ′ (AB ′ + A′B)
O, diferencia = Bin (A X NOR B) + Bin ′ (A X O B)
O, diferencia = Bin (A X O B) ′ + Bin ′ (A X O B)
O, diferencia = Bin XOR (A XOR B)
O, Diferencia = (A XOR B) XOR Bin
Pedir prestado = A ′ B ′ Bin + AB ′ Bin′ + A ′ BBin′ + ABBin
O, pedir prestado = A ′ B ′ Bin + A ′ BBin ′ + A ′ BBin + A ′ BBin + A ′ BBin + AB Bin
O, pedir prestado = A ′ Bin (B + B ′) + A′B (Bin +Bin ′) + BBin (A + A ′)
O, pedir prestado = A ′ Bin + A′B + BBin
La expresión se puede escribir de otra manera:
Combate = A ′ B ′ Bin + A ′ B Bin ′ + A ′ B Bin + AB Bin
O, Pedir prestado = Bin (AB + A ′ B ′) + A ′ B (Bin + Bin ′)
O, pedir prestado = Bin (A XNOR B) + A ′ B
O, pedir prestado = Bin (A XOR B) ′ + A ′ B
Como muestra el diagrama del circuito, A, B y Ben. El circuito da dos salidas como salida de diferencia y toma prestada la salida. El bin se establece en 1 siempre que haya un préstamo en la entrada A. Bin luego se resta de A e Y.
La expresión general se puede escribir como D = A - B - Bin + 2Bfuera.
Los sustractores completos también se pueden implementar usando medios sustractores.
Sustractor de N bits
En un restador binario de un solo bit, se puede realizar la resta de solo 1 bit. Si necesitamos realizar la resta de n bits, entonces se requiere un restador binario de bits. Un restador de n bits se puede implementar de manera similar usando sustractores en forma de cascada.
Aplicaciones de los sustractores
- Los sustractores se utilizan a menudo con sumadores. Siempre que se necesita un sumador para un circuito, también se requiere un restador.
- ALU, que se encarga del cálculo, y se queda dentro de un microprocesador, también necesita restadores. Las CPU también necesitan sustractores para su funcionamiento.
- Los microcontroladores también utilizan sustractores para realizar el cálculo digital.
- Los sustractores también se utilizan en el dominio de procesamiento de señales digitales.
- Las computadoras digitales usan muchos restadores.
Implementación VHDL de medios sustractores y sustractores completos
Modelado de flujo de datos de medio sustractor
biblioteca IEEE;
utilice IEEE.STD_LOGIC_1164.ALL;
la entidad ENTITY_NAME es
Puerto (A: en STD_LOGIC;
B: en STD_LOGIC;
IB: en STD_LOGIC;
Diff: out STD_LOGIC;
Borr: fuera STD_LOGIC);
finalizar ENTITY_NAME;
Flujo de datos de arquitectura
El flujo de datos de arquitectura de ENTITY_NAME es
comenzar
Diff <= (A xor B) xor IB;
Borr <= ((no A) y (B o IB)) o (B e IB);
finalizar el flujo de datos;
Modelado de flujo de datos de sustractor completo
la entidad ENTITY_NAME es
Puerto (A: en STD_LOGIC;
B: en STD_LOGIC;
IB: en STD_LOGIC;
Borr: fuera STD_LOGIC;
Diff: out STD_LOGIC);
finalizar ENTITY_NAME;
Flujo de datos de arquitectura
arquitectura El comportamiento de ENTITY_NAME es
comenzar
proceso (A, B, IB)
comenzar
si (A = '0 ′ y B =' 0 ′ e IB = '0 ′) entonces
Diff <= '0 ′;
Borr <= '0 ′;
elsif (A = '0 ′ y B =' 0 ′ e IB = '1 ′) entonces
Borr <= '1 ′;
Diff <= '1 ′;
elsif (A = '0 ′ y B =' 1 ′ e IB = '0 ′) entonces
Borr <= '1 ′;
Diff <= '1 ′;
elsif (A = '0 ′ y B =' 1 ′ e IB = '1 ′) entonces
Borr <= '0 ′;
Diff <= '1 ′;
elsif (A = '1 ′ y B =' 0 ′ e IB = '0 ′) entonces
Borr <= '1 ′;
Diff <= '0 ′;
elsif (A = '1 ′ y B =' 0 ′ e IB = '1 ′) entonces
Borr <= '0 ′;
Diff <= '0 ′;
elsif (A = '1 ′ y B =' 1 ′ e IB = '0 ′) entonces
Borr <= '0 ′;
Diff <= '0 ′;
más
Borr <= '1 ′;
Diff <= '1 ′;
terminara si;
proceso finalizado;
terminar Conductual;
Hola, soy Sudipta Roy. He realizado B. Tech en Electrónica. Soy un entusiasta de la electrónica y actualmente me dedico al campo de la Electrónica y las Comunicaciones. Tengo un gran interés en explorar tecnologías modernas como la IA y el aprendizaje automático. Mis escritos están dedicados a proporcionar datos precisos y actualizados a todos los estudiantes. Ayudar a alguien a adquirir conocimientos me produce un inmenso placer.
Conectémonos a través de LinkedIn –
Hola compañero lector,
Somos un equipo pequeño en Techiescience y trabajamos duro entre los grandes jugadores. Si te gusta lo que ves, comparte nuestro contenido en las redes sociales. Su apoyo hace una gran diferencia. ¡Gracias!