Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Aritmetica Binaria
Aritmetica Binaria
Aritmtica Binaria
Electrnica Digital
ARITMTICA BINARIA
Operaciones en el sistema Binario Natural Suma Binaria Resta Binaria Unidad Aritmtica Lgica (ALU) Operaciones en BCD Natural Suma en BCD Resta en BCD
ARITMTICA BINARIA
Operaciones en el sistema Binario Natural Suma Binaria
Sumador sin acarreo o Half Adder (HA) Sumador con acarreo o Full Adder (FA) Sumador paralelo con acarreo serie Sumador paralelo con acarreo paralelo Sumador serie
Resta Binaria
Representacin de los nmeros negativos Operaciones en Complemento a 1 Operaciones en Complemento a 2 Desbordamientos (Overflow) Circuito complementador 74487 Comparadores binarios en magnitud
SUMA BINARIA
Sumador sin acarreo o Half Adder
Ai Bi Suma Ac. 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 Ai 0 Bi 0 0 1 1 1 1 0 Ai 0 Bi 0 0 1 0 1 0 1
Suma = Ai Bi + Ai Bi = Ai + Bi
Ac. = Ai Bi
Ai Bi
Suma
A B HA
S Co
Acarreo
SUMA BINARIA
Sumador con acarreo o Full Adder
A 0 0 0 0 1 1 1 1 B Ci 0 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1 S 0 1 1 0 1 0 0 1 Co 0 0 0 1 0 1 1 1 AB Ci 00 01 11 10 S 0 1 0 1 1 0 0 1 1 0
AB Ci 00 01 11 10 Co 0 1 0 0 0 1 1 1 0 1
SUMA BINARIA
Sumador con acarreo o Full Adder
Implantacin estndar: 6 puertas
A B S Ci
A B FA
A Ci B Ci A B CO
Ci
Co
SUMA BINARIA
Sumador con acarreo o Full Adder
Implantacin alternativa: 5 puertas
A
HA
S Co
A+B AB
HA
S Co
A + B + Ci Ci (A + B)
B Ci
+ A B + Ci (A + B) = A B + B Ci+ A Ci
Co
SUMA BINARIA
Sumador paralelo con acarreo serie
A2 B2
A1 B1
A0 B0
Cin
+ Cout S2 C2
S1
C1
S0
SUMA BINARIA
Sumador paralelo con acarreo paralelo (es ms rpido)
Necesitamos predecir el acarreo para cada trmino de la suma
A2 B2 Cout
A1 B1
A0 B0
Cin
S2
S1
S0
SUMA BINARIA
Sumador paralelo con acarreo paralelo
Se trata de predecir el acarreo para cada trmino de la suma C0 = Cin C1 = A0 B0 + C0 (A0+B0) = G0 + C0 P0 C2 = A1 B1 + C1 (A1+B1) = G1 + [G0 + C0 P0] P1 = G1 + G0 P1 + C0 P0 P1 C3 = ... = G2 + G1 P2 + G0 P1 P2 + C0 P0 P1 P2 Las variables son las entradas al sumador y el acarreo de la primera etapa
SUMA BINARIA
Sumador paralelo con acarreo paralelo
A2 B2 A1 B1 A0 B0
G2
P2
G1
P1
G0
P0
G2
G1 P2
G0P1 P2
C0P0 P1P2
G1
G0 P1
C0 P0 P1
G0 C0 P0
A2 B2 Cout +
A1 B1
A0 B0
C0=Cin
S2
S1
S0
SUMA BINARIA
Sumador serie
A B Ci + Co S
CLK
Clula de memoria
SUMA BINARIA
Sumadores comerciales
7480 sumador completo de 1 bit 7482 sumador completo de 2 bit 7483 sumador completo de 4 bit 74182 generador de acarreo previo
RESTA BINARIA
En principio se pueden disear circuitos restadores de la misma forma a como lo hicimos con los sumadores Sin embargo lo que se suele hacer es usar los mismos circuitos sumadores para hacer las restas Para ello tenemos que ver primero como se representan los nmeros binarios negativos
RESTA BINARIA
Representacin de nmeros negativos
Representacin de nmeros positivos es similar en la mayora de los sistemas Mayores diferencias surgen en la representacin de los valores negativos Dos esquemas fundamentales: Complemento a uno Complemento a dos Especificaciones iniciales: Trabajaremos con palabras de cuatro bits Podemos representar 16 valores distintos Aproximadamente la mitad sern positivos y la mitad negativos
RESTA BINARIA
Complemento a uno
DEF: Si N es un nmero positivo, N es su negativo de tal forma que: n Ca1 (N) = N = (2 - 1) - N Ej: Ca1 (7) 2
4
= - 0111 1000 = -7
TRUCO: Cambiamos cada bit por su complementario Ej: Ca1 (7) 0111 -> 1000
RESTA BINARIA
Complemento a uno
-0 -1 -2 -3 -4 -5
1111 1110
+0
0000 0001
+1 +2 +3 +4
+
0 100 = + 4 1 011 = - 4
1101
0010
+5
-6
+6
-7
+7
RESTA BINARIA
Complemento a dos
DEF: Si N es un nmero positivo: n Ca2 (N) = 2 - N = Ca1 (N) + 1
RESTA BINARIA
Complemento a dos
TRUCO1: Complementamos cada bit y al resultado le sumamos 1, es decir, le sumamos 1 al Ca1 del nmero 0111 -> 1000 + 1 -> 1001 (representacin de -7) 1001 -> 0110 + 1 -> 0111 (representacin de 7) TRUCO2: Ir de izquierda a derecha, respetar el primer 1 que nos encontremos y complementar el resto de bits 0111 -> 1001 (representacin de -7) 1001 -> 0111 (representacin de 7)
RESTA BINARIA
Complemento a dos
-2 -3 -4 -5 -6 -1
1111 1110
+0
0000 0001
+1 +2 +3 +4
+ 0 100 = + 4 1 100 = - 4 -
1101
0010
+5
-7
+6
-8
+7
Hay una nica representacin para el cero (bueno) Hay un nmero negativo ms Es menos intuitivo el obtener el negativo de un nmero
RESTA BINARIA
Suma y resta de nmeros en complemento a uno
4 +3 7 00100 00011 00111 -4 + (-3) -7 11011 11100 110111 1 Se suma el bit de acarreo 4 -3 00100 11100 -4 +3 -1 11000 11011 00011 11110 Ca1 del resultado
1 100000 1 00001
RESTA BINARIA
Suma y resta de nmeros en complemento a dos
4 +3 7 Se desprecia el bit de acarreo 4 -3 1 00100 11101 100001 -4 +3 -1 11100 00011 11111 00100 00011 00111 -4 + (-3) -7 11100 11101 111001 Ca2 del resultado
La simplicidad de las operaciones aritmticas en la notacin de complemento a dos hace que esta notacin sea la ms utilizada en sistemas digitales
RESTA BINARIA
Sumador/Restador en complemento a dos
B3 B2 B1 B0
A3 A2 A1 A0
COMPL.
Co
SUMADOR
Ci
0 = SUMA 1 = RESTA
S3 S2 S1 S0
RESTA BINARIA
Sumador/Restador en complemento a uno
B3 B2 B1 B0 0 = SUMA 1 = RESTA
A3 A2 A1 A0
COMPL.
Co
SUMADOR
Ci
S3 S2 S1 S0
RESTA BINARIA
Circuito complementador
COMPL.
RESTA BINARIA
Ejemplo de circuito complementador: 74487
B0 B1 B2 B3 L M Y0 Y1 Y2 Y3
DESBORDAMIENTO (OVERFLOW)
Si estamos trabajando con n bits (1 bit de signo y n-1 bits de magnitud) los resultados de las operaciones no deben superar el siguiente rango:
DESBORDAMIENTO (OVERFLOW)
Condicin de desbordamiento
Sumar dos nmeros positivos y obtener uno negativo o viceversa -1 -2 -3 -4 -5 -6 -7 -8
1110 1101 1100 1011 1010 1001 1000 1111
+0
0000 0001 0010 0011 0100 0101 0110 0111
-1 +1 +2 +3 +4 +5 -4 -5 -6 -7 -8 -7 - 2 = +7 ??? -3 -2
1110 1101 1100 1011 1010 1001 1000 1111
+0
0000 0001 0010 0011 0100 0101 0110 0111
+1 +2 +3 +4 +5
+6
+6
+7 5 + 3 = -8 ???
+7
SUMA EN BCD
Representacin de nmeros en formato BCD Los dgitos decimales del 0 al 9 se representan como 0000 a 1001 en binario Suma: 5 = 0101 3 = 0011 1000 = 8 5 = 0101 8 = 1000 1101 = 13 Los problemas surgen cuando el resultado es mayor que nueve
Solucin: sumar 6 (0110) si el resultado es mayor que 9 5 = 0101 8 = 1000 1101 = 13 en binario 6 = 0110 1 0011 = 1 3 en BCD 9 = 1001 7 = 0111 1 0000 = 16 en binario 6 = 0110 1 0110 = 1 6 en BCD
SUMA EN BCD
Bloque sumador BCD
A3 A2 A1 A0
B3 B2 B1 B0
Co
SUMADOR BCD
Ci
S3 S2 S1 S0
RESTA EN BCD
Igual que con la resta binaria, la resta en BCD se har sumando una cantidad negativa a otra positiva Para ello tenemos que ver primero como se representan los nmeros BCD negativos
RESTA EN BCD
Complemento a diez
DEF: Si N es un nmero positivo, N es su negativo de tal forma que: n Ca10 (N) = N = 10 - N Ej: Ca10 (3291) = 104-3291 = 10000-3291 = 6709 = 0110 0111 0000 1001
Complemento a nueve
DEF: Si N es un nmero positivo, N es su negativo de tal forma que: n Ca9 (N) = N = 10 - 1-N Ej: Ca9 (3291) = 104-1-3291 = 6708 = 0110 0111 0000 1000
RESTA EN BCD
Resta de nmeros en complemento a diez
Ej: 5239 - 3291 = 5239 - Ca10 (3291) 1 0 1 Se desprecia el bit de acarreo 10 1 0101 0010 0011 0110 0111 0000 1011 1001 0100 110 10001 1001 1001 10010 110 11000
positivo
1000 = 1948 OK
RESTA EN BCD
Resta de nmeros en complemento a diez
Ej: 3291 - 5239 = 3291 - Ca10 (5239) 1 0 0011 1 0100 1 1000 1 0010 0111 1010 110 10000 1001 0110 1111 110 10101 0001 0001 0010
1 negativo
1000
0000
0101
0010 = -1948 OK
RESTA EN BCD
Resta de nmeros en complemento a nueve
Ej: 5239 - 3291 = 5239 - Ca9 (3291) 1 0 1 10 1 0101 0010 0011 0110 0111 0000 1011 1001 0100 110 10001 No se desprecia el bit de acarreo positivo 10 0001 1001 0100 1001 1000 10001 110 10111 0111 +1 0 0001 1001 0100 1000 = 1948 OK
RESTA EN BCD
Resta de nmeros en complemento a nueve
Ej: 3291 - 5239 = 3291 - Ca9 (5239) 1 0 0011 1 0100 1 1000 1 0010 0111 1010 110 10000 1001 0110 1111 110 10101 0001 0000 0001
1 1000 negativo
0000
0101
0001 = -1948 OK
RESTA EN BCD
Resta BCD de 2 dgitos en complemento a nueve
B7 B6 B5 B4 B3 B2 B1 B0
A7 A6 A5 A4
C9
A3 A2 A1 A0
C9
Co
SUMADOR
Ci
Co
SUMADOR
Ci
S7 S6 S5 S4
S3 S2 S1 S0
RESTA BCD
Circuito complementador a nueve
C9