Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
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.
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
+ 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
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.
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.
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
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.
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
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.
SISTEMA DE COMPLEMENTO A 2
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.
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.
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.