Sei sulla pagina 1di 9

Universidad Politécnica Salesiana Electrónica Digital

ARITMÉTICA DIGITAL : OPERACIONES Y CIRCUITOS


Introducción
Las computadoras y calculadoras digitales realizan las operaciones aritméticas con números
representados en forma binaria.

SUMA BINARIA
La suma de dos números binarios se lleva a cabo exactamente en la misma forma que con los
números decimales. Sin embargo, sólo cuatro casos pueden tener lugar en la suma de dos digitos
binarios (bits) en cualquier posición. Estos son:
0+0=0
1+0=1
1 + 1 = 10 = 0 + acarrreo de 1 a la siguiente posición
1 + 1 + 1 = 11 = 1 + acarreo de 1 a la siguiente posición.

El último caso ocurre cuando los dos bits en una cierta posición son 1 y existe un acarreo desde la
posición anterior,
011 (3) 1001 (9) 11.011 (3.375)
+ 110 (6) + 1111 (15) + 10.001 (2.750)
1001 (9) 11000 (24) 110.001 (6.125)
No es necesario considerar la suma de más de dos números binarios a la vez, porque en todos los
sistemas digitales la circuitería que en realidad realiza la suma sólo puede manejar dos números a la
vez. Cuando se sumen más de dos números primero habrá que sumar los dos primeros y luego se
resultado sumarlo al tercer número, etc.
La suma es la operación aritmética más importante en los sistemas digitales. Como veremos, las
operaciones de resta, multiplicación y división que se llevan a cabo en la mayoría de las
computadoras y calculadoras digitales modernas en realidad sólo se usa la suma como operación
básica.

REPRESENTACION DE NÚMEROS CON SIGNO

En las computadoras digitales los números binarios se representan mediante un conjunto de


dispositivos de almacenamiento binario (esto es flip-flop). Cada dispositivo representa un bit. Por
ejemplo, un registro de FF de seis bits podría almacenar números binarios variando de 000000 a
111111 (0 a 63 en decimal). Esto representa la magnitud del número.
En general, el acuerdo a que se ha llegado es que un 0 en el bit de signo representa un número
positivo, y un 1 en el bit de signo representa un número negativo.
El bit de signo se usa par aindicar la naturaleza positiva o negativa del número binario almacenado.
Los números en la siguiente figura constan de un bit de signo y seis bits de magnitud. Los bits de
magnitud son el equivalente
binario verdadero del valor
decimal que se representa. A
esto se le llama sistema de
signo-magnitud para
representar número binarios con
signo.
El sistema de uso más común
para representar números
binarios con signo es el sistema
de complemento a 2.

FORMA DE COMPLEMENTO A 1
El complemento a 1 de un número binario se obtiene cambiando cada 0 a un 1 y cada 1 a un 0. en
otras palabras, se cambia cada bit del número por su complemento.
101101 número binario original
010010 se complementa cada bit para formar el complemento a 1

FORMA DE COMPLEMENTO A 2
El complemento a 2 de un número binario se forma tomando el complemento a 1 del número y
agregando 1 a la posición del bit menos significativo.
101101 equivale a 45

Por: Ing. Carlos Pillajo A. 1


Universidad Politécnica Salesiana Electrónica Digital

010010 se complementa cada bit para formar el complemento a 1


+ 1 se agrega 1 para formar el complemento a 2
010011 complemento a 2 del número binario original.

REPRESENTACION DE NÚMEROS CON SIGNO USANDO EL COMPLEMENTO A 2


El sistema de complemento a 2 para representar números con signo funciona de la siguiente
manera:
• Si el número es positivo, la magnitud se representa en su forma binaria verdadera original y se
coloca un bit de signo 0 después del bit más significativo.
• Si el número es negativo, la magnitud se representa en su forma de complemento a 2 y se
coloca un bit de signo 1 después del bit más significativo
Es sistema de complemento a 2 se usa para representar números con signo porque, como veremos,
nos permite realizar la operación de resta mediante una suma. Esto es importante porque significa
que una computadora digital puede
usar la misma circuitería para sumar
o para restar, con lo que se obtiene
un ahorro en hardware.
Ej.- Represente cada uno de los
siguientes números decimales con
signo como números binarios con
signo empleando el sistema de
complemento a 2. Use un total de
cinco bits, incluyendo el bit de signo.
a) + 13 sol: 01101
b) -9 sol: 10111
c) + 3 sol: 00011
d) -2 sol: 11110
e) - 8 sol: 11000

Negación.- es el hecho de convertir un número positivo a su equivalente negativo, o un número


negativo a su equivalente positivo. Cuando se representan números binarios con signo en el sistema
de complemento a 2, la negación se lleva a cabo simplemente realizando la operación de
complemento a 2.
Se inicia con ---- 01001 = + 9
Complemento a 2 (negar) ---- 10111 = - 9
Volver a negar --- 01001 = + 9
Así un número binario con signo se niega complementándolo a 2
Ej.- cada uno de los siguientes números es un número binario con signo en el sistema de
complemento a 2. Determine el valor decimal en cada caso:
a) 01100 Sol: +12 b) 11010 Sol: -6 c) 10001 Sol: -15

Caso especial sobre la representación en complemento 2


Siempre que un número con signo tenga un 1 en el bit de signo y todos los bits correspondientes a
la magnitud sean ceros, su equivalente decimal será -2N, donde N es el número de bits en la
magnitud.
Ej. 1000 = -23 = -8
10000 = -24 = -16
100000 = -25 = -32
De esta manera, se puede establecer que el rango completo de valores que se puede representar
en el sistema de complemento a 2, el cual tiene N bits de magnitud, es:
- 2N a + ( 2N - 1 )
Hay un total de 2N+1 valores diferentes, incluyendo el 0
EJ.- Que rango de valores decimales sin signo se pueden representar con un byte?
000000002 = 010
111111112 = 25510
EJ.- Que rango de valores decimales con signo se pueden representar con un byte?
El valor negativo mayor es: 100000002 = -27 = - 12810
El valor positivo menor es: 011111112 = +27 = + 12710

SUMA EN EL SISTEMA COMPLEMENTO A 2


Ahora investigaremos como se realizan las operaciones de suma y resta en maquinas digitales que
usan representación de complemento a 2 para números negativos
Caso I : dos números positivos. La suma de dos números positivos es sencilla

Por: Ing. Carlos Pillajo A. 2


Universidad Politécnica Salesiana Electrónica Digital

+ 9 ---- 0 1001
+ 4 ---- 0 0100
+13 0 1101
Caso II : número positivo y número negativo menor.- considere que el número negativo estará en su
forma complemento a 2
+ 9 ---- 0 1001
- 4 ---- 1 1100 (4 en complemento a 2)
+5 1 0 0101
En este caso se ignora el bit de acarreo.
Caso III: número positivo y número negativo mayor.-
- 9 ---- 1 0111 (9 en complemento a 2)
+ 4 ---- 0 0100
-5 1 1011
Caso IV; dos números negativos
- 9 ---- 1 0111 (9 en complemento a 2)
- 4 ---- 1 1100 (4 en complemento a 2)
-13 1 1 0011
Caso V: números iguales y opuestos
- 9 ---- 1 0111 (9 en complemento a 2)
+ 9 ---- 0 1001
0 1 0 0000
RESTA EN EL SISTEMA DE COMPLEMENTO A 2
La operación de resta usando el sistema de complemento a 2 en realidad implica la operación de
suma, y de hecho no es diferente a los diversos casos para suma, se sigue el siguiente
procedimiento.
1. Se niega el sustraendo.- esto cambiará el sustraendo a su valor equivalente con signo
opuesto.
2. Se suma al minuendo.- el resultado de esta suma representará la diferencia entre el
sustraendo y el minuendo.
Minuendo (+9) ----- 01001
Sustraendo (+4) ----- 00100

Minuendo (+9) ----- 01001


Sustraendo - 4 ---- 11100 (4 en complemento a 2)
1 00101
Desbordamiento Aritmético.
En cada uno de los ejemplos anteriores de suma y resta, los números que se sumaron consistieron
en un bit de signo y cuatro bits de magnitud. Las respuestas también constaron de un bit de signo y
cuatro bits de magnitud. Cualquier acarreo en la sexta posición del bit fue ignorado. En todos los
casos, la magnitud de la respuesta fue lo suficientemente pequeña como para caber en cuatro bits.
Veamos la suma +9 y +8

(+9) ----- 0 1001


(+8) ----- 0 1000
1 0001
Signo incorrecto magnitud incorrecta
La respuesta tiene un bit de signo negativo, lo que obviamente es incorrecto puesto que se están
sumando dos números positivos. La respuesta debe ser +17 pero la magnitud 17 requiere más de
cuatro bits y por lo tanto se desborda en la posición del bit de signo. Esta condición de desborde
sólo puede ocurrir cuando se suman dos números positivos o negativos, y siempre produce un
resultado incorrecto. El desborde se puede detectar comprobando que el bit de signo del resultado
sea igual a los bits de signo de los números que se suman.
Debido a que la sustacción en el sistema de complemento a 2 se lleva a cabo negando el minuendo
y sumándolo al sustraendo, el desborde sólo puede ocurrir cuando el minuendo y el sustraendo
tienen signos diferentes. Por ejemplo, si restamos -8 de +9, el -8 se niega para convertirlo en +8 y se
suma a +9 , igual que se mostró antes; el desbordamiento produce un resultado negativo erróneo,
puesto que la magnitud es demasiado grande.

MULTIPLICACIÓN DE NÚMERO BINARIOS


La multiplicación de números binarios se lleva a cabo de la misma manera que la multiplicación de
números decimales. El proceso es más simple, puesto que los dígitos multiplicadores o son 0, o bien
1 y por ende siempre se multiplica por 0 y no por otros dígitos.
1001 multiplicando 910
1011 multiplicador 1110

Por: Ing. Carlos Pillajo A. 3


Universidad Politécnica Salesiana Electrónica Digital

1001
1001
0000
1001
1100011 producto final 9910
En este ejemplo el multiplicando y el multiplicador están en forma binaria verdadera y no se usan
bits de signo.

MULTIPLICACIÓN EN SISTEMA COMPLEMENTO A 2


En las computadoras que usan la representación de complemento a 2, la multiplicación se lleva a
cabo en la forma antes descrita, siempre y cuando tanto el multiplicando como el multiplicador se
pongan en forma binaria verdadera.
• Si los dos números son positivos, ya se encuentran en forma binaria positiva y se multiplican
como están, y se agrega un bit de signo de 0
• Cuando los dos números son negativos están en forma de complemento a 2. se toma el
complemento a 2 de cada uno para convertirlo a un número positivo, y se agrega un bit de signo
de 0
• Cuando uno de los números es positivo y otro negativo, el número negativo se convierte primero
a una magnitud positiva tomando su complemento a 2. el producto estará en forma de magnitud
verdadera. Sin embargo, el producto debe ser negativo, puesto que los números originales
tienen signos opuestos. Así, luego el producto se cambia a su forma de complemento a 2 y se le
da un bit de signo 1.

SUMA BCD
Recuerde que este código toma cada dígito decimal y lo representa con un código de cuatro bits,
que va de 0000 a 1001.
Suma igual a nueve o menor.-
45 0100 0101 BCD para 45
+33 + 0011 0011 BCD para 33
78 0111 1000 BCD para 78
Cuando ninguna de las sumas de los pares de dígitos decimales excedió de 9; por lo tanto, no se
produjeron acarreos decimales. Para estos casos el proceso de adición BCD es sensillo y en
realidad es el mismo que para la adición binaria.

Suma mayor que 9


110 BCD para 6
+ 0111 BCD para 7
1101 suma inválida
0110 se suma 6 para corregir
0001 0011 BCD para 13
Como se muestra, se agrega 0110 a la suma inválida y produce el resultado BCD correcto.
47 0100 0111
+ 35 0011 0101
82 0111 1100
1 0110
1000 0010
La suma de los códigos de cuatro bits para los dígitos 7 y 5 resulta en una suma inválida que se
corrige agregando 0110. note que esto genera un acarreo de 1, el cual se efectúa para agregarse a
la suma BCD de los dígitos de la segunda posición.
Considere la suma de 59 y 38 en BCD
59 0101 1001 BCD para 47
+ 38 0011 1000 BCD para 38
97 1001 0001 se realiza la suma
0110 se suma 6 para corregir
1001 0111 BCD para 97

El procedimiento de adición en BCD


• Empleando la adición binaria ordinaria se suman los grupos de códigos BCD para cada posición
del dígito.
• Para las posiciones donde la suma sea 9 o menor no es necesario hacer la corrección. La suma
está en forma BCD adecuada.
• Cuando la suma de dos dígitos es mayor que 9, se debe aplicar un factor de corrección de 0110
para obtener el resultado correcto en BCD.

Por: Ing. Carlos Pillajo A. 4


Universidad Politécnica Salesiana Electrónica Digital

Ej. 275 0010 0111 0101 BCD para 275


+ 641 + 0110 0100 0001 BCD para 641
916 1000 1011 0110 se realiza la suma
+ 0110 se suma 6 para corregir el segundo digito
1001 0001 0110 BCD para 916

ARITMÉTICA HEXADECIMAL
Suma hexadecimal.- se lleva a cabo casi de la misma manera que la suma decimal, siempre y
cuando recuerde que el número hexadecimal mayor es F en lugar de 9. Se sugiere seguir el
siguiente procedimiento:
1. Se suman los dos números hexadecimales insertando mentalmente el equivalente decimal
de estos dígitos mayores que 9
2. Si la suma es 15 o menos está se puede expresar directamente como un dígito
hexadecimal.
3. Si la suma es mayor que o igual a 16 y se desplaza un 1 a la siguiente posición del dígito.
Ej.- 58 58 3AF
+ 24 + 4B + 23C
7C A3 5EB
Resta hexadecimal.- Recuerde que los números hexadecimales son una forma eficiente de
representar números binarios. Así, podemos restar números hexadecimales usando el mismo
método que empleamos para números binarios. Se toma el complemento a 2 del sustraendo
hexadecimal, luego se suma al minuendo y se ignora cualquier acarreo de la posición MSB.
Como encontramos el complemento a 2 de un número hexadecimal?
73A numero hexadecimal
0111 0011 1010 se convierte a binario
1000 1100 0110 se toma el complemento a 2
8C6 se convierte de regreso a hexadecimal.
Hay un procedimiento más rápido: se resta cada dígito hexadecimal a F;luego se suma 1
F F F
-7 -3 –A
8 C 5
+ 1
8 C 6
Representación hexadecimal de números con signo.- Los datos que están en la memoria de
trabajo interna de una microcomputadora, en un disco duro, o en un CD-ROM por lo general se
almacenan en bytes. El byte de datos alamacenado en una ubicación de memoria determinada con
frecuencia se expresa en notación hexadecimal, debido a que es una forma más eficiente y tiene
menos posibilidad de error que su expresión en notación binaria. Cuando los datos constan de
números con signo, es de mucha utilidad ser capaz de reconocer si un valor hexadecimal representa
un número positivo o negativo
En cada ubicación de memoria se almacena un solo byte, que es el equivalente binario de un
número decimal binario. En la tabla se muestra el equivalente hexadecimal de cada byte. Para un
valor de datos negativos, el bit de signo (MSB) del número binario será 1 esto siempre hará al MSD
del número hexadecimal 8 o mayor. Cuando el valor de datos es positivo, el bit de signo será 0, y el
MSD del número hexadecimal será 7 o menor. Lo anterior es válido, sin importar de cuántos digitos
se componga el número hexadecimal. Cuando el MSD es 8 o mayor el número que se
representa es negativo; cuando el MSD es 7 o menor el número es positivo.
Datos binarios Valor hexadecimal Valor decimal
00111010 3A + 58
11100101 E5 - 29
01010111 57 + 87
10000000 80 -128

Por: Ing. Carlos Pillajo A. 5


Universidad Politécnica Salesiana Electrónica Digital

CIRCUITOS ARITMÉTICOS
Una función esencial de casi todas las computadoras y calculadoras es la realización de
operaciones aritméticas, las cuales se efectúan en la unidad aritmética-lógica de una computadora,
donde se combinan compuertas lógicas con flip-flop, de manera que puedan sumar, restar,
multiplicar y dividir números binarios.

Unidad aritmética-lógica
Todas las operaciones aritméticas se llevan a
cabo en la unidad aritmética-lógica ALU de
una computadora, en la figura se muestra un
diagrama de bloques con los elementos
principales que se incluyen en una ALU
común. El propósito principal de la ALU es
aceptar los datos binarios que se almacenan
en la memoria y ejecutar operaciones
aritméticas y lógicas con estos datos, según
las instrucciones de la unidad de control.
La uniad aritmética lógica contiene cuando
menos dos registros de flip-flop el registro B y el registro acumulador. También contiene lógica
combinatoria, la cual realiza las operaciones aritméticas y lógicas con los números binarios que
están almacenados en el registro B y en el acumulador. Una secuencia típica de operaciones puede
ocurrir así:
1.- La unidad de control recibe una instrucción
2.- El número que se sumará se transfiere de la memoria al registro B
3.- El número en el registro B y el número en el registro acumulador se suman en los circuitos
lógicos, la suma resultante se envía al acumulador para su almacenamieto.
4.- El nuevo número en el acumulador puede permanecer allí, de manera que se pueda sumar otro
número, o si el proceso aritmético a terminado, se puede transferir a la memoria para ser
almacenado.

SUMADOR BINARIO EN PARALELO.

Las computadoras y las calculadoras


realizan la operación de suma sobre dos
números binarios a la vez, donde cada
número binario puede tener varios
dígitos binarios. En la siguiente figura se
ilustra la suma de dos números de cinco
bits. El cosumando se almacena en el
registro acumulador; es decir, el
acumulador contiene 5 FFs,
almacenando los valores 10101 en FFs
sucesivos. De manera similar, el sumando, el número que se sumará al cosumando, se almacena
en el registro B (en el caso 00111)
El proceso de adición se inicia sumando los bits menos significativos (LSB) del cosumando y del
sumando. Así, 1+1=10, lo cual significad que la suma para esa posición es 0, con un acarreo de 1.

En la siguiente figura se tiene las variables A4,A3,A2,A1 y A0 representan los bits del cosumando
que están almacenados en el acumulador (al cual también se le llama registro A). las variables
B4,B3,B2,B1 y B0
representan los bits del
sumando almacenados
en el registro B. Las
variables C4,C3,C2;C1
y C0 representan los
bits de acarreo en las
posiciones
correspondientes. Las
variables S4,S3,S2,S1 y
S0 son los bits de salida
de la suma para cada
posición. Los bits
correspondientes del

Por: Ing. Carlos Pillajo A. 6


Universidad Politécnica Salesiana Electrónica Digital

cosumando y del sumando se alimentan a un circuito lógico llamado sumador completo, junto con un
bit de acarreo de la posición anterior.

DISEÑO DE UN SUMADOR COMPLETO.


Ahora que conocemos la función del sumador completo, podemos proceder a diseñar un circuito
lógico que realice esta función.

S = /A/BCent + /AB/Cent + A/B/Cent + ABCent

SUMADOR EN PARALELO DE CIRCUITOS INTEGRADO


Existen varios sumadores en paralelo disponibles como circuitos integrados. El más común es un CI
sumador en paralelo de cuatro bits, que contiene cuatro SCs interconectados y la circuitería de
acarreo anticipado necesaria para la operación a alta velocidad. Los modelos 7483, 74283 son chips
sumadores en paralelo de cuatro bits TTLs.

Por: Ing. Carlos Pillajo A. 7


Universidad Politécnica Salesiana Electrónica Digital

SISTEMA DE COMPLEMENTO A 2

En la mayoría de las computadoras modernas se emplea el sistema de complemento a 2 para


representar números negativos y para realizar la operación de sustracción. Las operaciones de
suma y resta de números con signo se pueden llevar a cabo usando sólo la operación de suma, si
se usa la forma de complemento a 2 para representar números negativos.

SUMA
Los números positivos y negativos,
incluyendo los bits de signo, se
puede sumar en conjunto en el
circuito de sumador paralelo básico
cuando los números negativos
están en su forma de complemento
a 2. Esto se ilustra en la siguiente
figura

RESTA
Cuando se usa el sistema de
complemento a 2, el número que
se restará (el sustraendo) se
cambia a su complemento a 2 y
luego se suma al minuendo (el
número del que se resta el sustraendo). Por ejemplo, se puede suponer que el minuendo ya se
almacenó en el acumulador (registro A). Luego el sustraendo se coloca en el registro B (en una
computadora se transferiría de aquí a la memoria ) y se cambia a su forma de complemento a 2
antes de ser sumada al número en el registro A. ahora las salidas de suma del circuito sumador
representan la diferencia entre el minuendo y el sustraendo.

SUMADOR BCD
El proceso de la aplicación BCD se analizó:
1. Se suma los grupos de código BCD para cada posición de dígito decimal; se usa la suma
binaria ordinaria.

Por: Ing. Carlos Pillajo A. 8


Universidad Politécnica Salesiana Electrónica Digital

2. Para las posiciones donde la suma sea 9 o menor, la suma está en forma BCD apropiada y
no es necesario hacer una corrección
3. Cuando la suma de dos dígitos es mayor que 9 se debe agregar una corrección de 0110 a
la suma, con el fin de producir el resultado BCD correcto. Esto producirá un acarreo que se
agregará a la siguiente posición decimal.
Un sumador BCD debe ser
capaz de operar de
acuerdo con los pasos
anteriores. En otras
palabras, el circuito debe
ser capaz de hacer lo
siguiente:
1. Sumar grupos de
códigos BCD de cuatro
bits, usando suma
binaria directa.
2. Determinar si el
resultado de esta
adición es mayor que
1001 (9 decimal); si lo
es, se añade 0110(6) a
esta suma y genera un
acarreo de la siguiente
posición decimal.

CIRCUITOS INTEGRADOS ALU


Existen varios integrados disponibles que se denominan Unidades Aritméticas-Lógicas (ALU),
aunque no tiene las capacidades totales de una unidad aritmética-lógica de una computadora. Estos
chips son capaces de realizar diversas operaciones aritméticas y lógicas en entradas de datos
binarios. La operación específica que realiza un CI ALU se determina mediante un código binario
específico aplicado a sus entradas SELECT de función. Algunos circuitos integrados ALU son muy
complejos.
La ALU 74LS382
En la siguiente figura se muestra el símbolo de bloque para una ALU que está disponible como

74LS328 de 20 pines opera en dos números de entrada de 4 bits, A3A2A1A0 y B3B2B1B0, para
producir un resultado de salida de cuatro bits F3F2F1F0. Esta ALU puede realizar ocho diferentes
operaciones. En cualquier tiempo determinado, la operación que se realiza depende del código de
entrada aplicado a las entradas SELECT de función S2S1S0.

Por: Ing. Carlos Pillajo A. 9

Potrebbero piacerti anche