Está en la página 1de 7

TEMA 1

Pgina 13 de 19

En la multiplicacin de nmeros binarios tenemos que (0 x 0)=(0 x 1)=(1 x 0)=0 y (1 x


1)=1 el cual, como veremos en los prximos captulos, es el comportamiento de una
compuerta AND. Ese anlisis nos es familiar ya que cumple exactamente las mismas
propiedades a las que estamos acostumbrados. Yo dira ms bien que realizar esta
multiplicacin es un buen ejercicio para la suma ya que debe considerar mltiples
acarreos. Entienda que en binario (1+1+1)=11, (1+1+1+1)=100, (1+1+1+1+1)=101,
(1+1+1+1+1+1+1+1)=1000, etc.
Hagamos ahora la suma y resta de los mismos nmeros pero en hexadecimal:
BD + 16 = D3
ya que (D+6)16=(13)16 que conlleva 1 de acarreo y luego ([1]+B+1)16=D16. Para la
resta:
BD - 16 = A7
Lo cual no tiene mucho que analizar. La consideracin ms importante a tomar es qu
dgitos se pueden usar lo cual depende de la base. De resto el procedimiento es igual
al que estamos familiarizados.

COMPLEMENTOS
Los complementos son muy usados en los sistemas digitales al momento de realizar
operaciones de resta. Existen dos tipos de complemento. El complemento a b y el
complemento a b-1 donde b es la base. Es decir, para los nmeros binarios existen
los complementos a 2 y a 1. En base octal seran complemento a 8 y a 7, etc. El
complemento a b se define de la siguiente forma:
Complemento a b
Teniendo un nmero N de n dgitos enteros, el complemento a b de N = (bn - N) si N
0 y ser 0 si N=0. Esto se cumple para todos los nmeros N positivos incluso con
fraccin decimal. El nico caso especial a considerar es cuando la parte entera es
cero. Esto se interpreta como que n = 0.

http://lasclases.com/CircuitosLogicos/tema1.html

26/07/2008

TEMA 1

Pgina 14 de 19

Veamos algunos ejemplos: Cul es el complemento a 10 de (987)10? En este caso N =


987 y n = 3, entonces:
103 - 987 = 1000 - 987 = 13
El complemento a 10 de (0,125)10? Aqu N = 0,125 y n = 0, as que:
100 - 0,125 = 1 - 0,125 = 0,875
El complemento a 10 de (987,125)10? N= 987,125 y n = 3, por lo tanto:
103 - 987,125 = 1000 - 987,125 = 12,875
ATENCIN: Observen que NO es lo mismo que calcular el complemento de la parte
entera y de la fraccin decimal por separado y juntar los resultados. OJO con eso.
Veamos unos casos en binario. Para el complemento a 2 de (10101100)2 tenemos
que n=8, entonces:
(28)10 - (10101100)2 = (256)10 - (10101100)2 = (100000000 - 10101100)2 =
(01010100)2
Otro. El complemento a 2 de (1010)2 es
(10000 - 1010)2 = (0110)2
Obsrvese que para calcular el complemento a 2 de un nmero binario slo basta con
revisar todos los dgitos desde el menos significativo hacia el ms significativo y
mientras se consiga un cero, dejarlo igual, al conseguir el primer nmero 1, dejarlo
igual para luego cambiar el resto de ellos hasta llegar al ms significativo. As
podemos decir rpidamente que el complemento a 2 de (10100000)2 es (01100000)2,
que el complemento a 2 de (111)2 es (001)2, etc. Otra forma muy sencilla de hallar el
complemento a 2 de un nmero binario es invirtiendo todos los dgitos (que como
veremos a continuacin es lo que se conoce como complemento a 1) y sumndole
uno al resultado obtenido. Prubenlo.
Complemento a b-1
Por otro lado tenemos tambin el complemento a b-1. En este caso, teniendo un
nmero positivo N en base b con n dgitos enteros y m dgitos en la fraccin decimal,

http://lasclases.com/CircuitosLogicos/tema1.html

26/07/2008

TEMA 1

Pgina 15 de 19

se conoce como complemento a b-1 de N a


bn - b-m - N
Veamos entonces. Para el complemento a 9 de (987)10 tenemos que N = 987, n = 3 y
m = 0, por lo tanto
103 - 100 - 987 = 1000 - 1 - 987 = 12
Para el complemento a 9 de (0,125)10 tenemos que N = 0,125 y n = 0 y m = 3,
entonces
100 - 10-3 - 0,25 = 1 - 0,001 - 0,125 = 0,999 - 0,125 = 0,874
Y qu hay del complemento a 9 de (987,125)10? En ese caso N= 987,125 ; n = 3 y m
= 3, por lo tanto
103 - 10-3 - 987,125 = 1000 - 0,001 - 987,125 = 999,999 - 987,125 = 12,874
Observen que en este caso s es lo mismo calcular el complemento de la parte entera
y el de la fraccin decimal por separado y juntar sumar los resultados.
Algunos ejemplos en binario. Para el complemento a 1 de (10101100)2 sabemos que
n=8 y m=0 =>
(28)10 -1 - (10101100)2 = (256)10 - 1 - (10101100)2 = (100000000 - 1 - 10101100)2
= (01010011)2
y que el complemento a 1 de (1010)2 es
(10000 - 1 - 1010)2 = (0101)2
En estos dos ltimos ejemplos se puede observar que para conseguir el complemento
a 1 de un nmero binario basta con tan solo invertir todos los dgitos (esto quiere
decir cambiar 0 por 1 y viceversa). Es por esto que les coment anteriormente que
otra forma de calcular el complemento a 2 de un nmero binario es hallando el
complemento a 1 (o sea invertir todos los digitos) y sumarle 1.
Resta por complemento
Al principio les dije que los complementos se usaban mucho en los sistemas digitales

http://lasclases.com/CircuitosLogicos/tema1.html

26/07/2008

TEMA 1

Pgina 16 de 19

para realizar clculos de resta. Si queremos realizar una resta basndonos en el


complemento a b (base) lo que hacemos es sumar al minuendo el complemento a b
del sustraendo. Si la suma acarrea 1, ste se descarta. En caso contrario se dice que el
nmero es negativo y ser el complemento a b del resultado de la suma.
Veamos un ejemplo con nmeros: (123 - 023)10 ; aqu el complemento a 10 de 23 es
977, entonces:
123
+ 977
------------------------1 100
El primer 1 es el acarreo por lo que la respuesta es 100. OJO: al usar este mtodo
debe considerar todos los nmeros con la misma cantidad de dgitos. Qu quiero
decir con esto?, que NO, repito: NO! pueden considerar el nmero 23 como un
nmero de 2 dgitos. Minuendo y sustraendo deben contener el mismo nmero de
dgitos. Por lo tanto deben considerar 023. En caso contrario obtendran un error.
Veamos otro ejemplo en el que la suma no arroja complemento: (23 - 100)10 ; para
este caso el complemento a 10 de 100 es 900 => 23 + 900 = 923 ( no lleva acarreo )
=> el complemento a 10 de 923 es 77 => Respuesta = -77.
Tambin existe un mtodo para realizar la resta pero usando el complemento a b-1.
Este caso es muy similar al caso anterior con la diferencia del acarreo. Aqu, en el
caso de haber un acarreo, ste no es descartado sino que el mismo es sumado al
resultado de la suma para obtener el resultado final. En caso de no tener acarreo, al
igual que antes, se procede a realizar el complemento del resultado de la suma y
agregarle un signo negativo. OBVIAMENTE todos los clculos de complementos en
este mtodo son basados en el complemento a b-1 y no al complemento a b.
Veamos algunos ejemplos: (123 - 023)10 ; el complemento a 9 de 23 es 976 ,
entonces
123
+ 976

http://lasclases.com/CircuitosLogicos/tema1.html

26/07/2008

TEMA 1

Pgina 17 de 19

-------------1 099
+1
-------------100
El primer 1 es el acarreo y como ste debe sumrsele al resultado de la suma tenemos
que 99 + 1 es 100. Por supuesto que al usar este mtodo tambin debe considerar
todos los nmeros con la misma cantidad de dgitos. El nmero 23 es en realidad
023. Veamos el otro ejemplo en el que la suma no arroja complemento: (23 - 100)10
=> el complemento a 9 de 100 es 899 => 23 + 899 = 922 ( no lleva acarreo ) => el
complemento a 9 de 922 es 77 => Respuesta = -77
Veamos algunos casos con nmeros binarios. Realizar la resta por complemento a 2 y
por complemento a 1 de: (10101110 110010)2
Por el mtodo de complemento a 2 tenemos: El complemento a 2 de 110010
(recordando que debe tener 8 dgitos) es 11001110 entonces
10101110
+ 11001110
------------------1 01111100
de lo que se concluye que (10101110 - 110010)2 = (1111100)2
Vemoslo ahora por el mtodo de complemento a 1. Aqu tendramos que
complemento a 1 de 110010 es 11001101, entonces
10101110
+ 11001101
-------------------

http://lasclases.com/CircuitosLogicos/tema1.html

26/07/2008

TEMA 1

Pgina 18 de 19

1 01111011
por lo que tenemos que hacer (01111011 + 1)2 resultando (01111100)2.
Excelente. Veamos otro caso. Realizar la resta de (110010 - 10101110)2. Por
complemento a 2 sera:
00110010
+ 01010010
---------------10000100
que como no tiene acarreo le calculamos el complemento a 2 y tenemos que el
resultado es -1111100. Con el mtodo de complemento a 1 sera:
00110010
+ 01010001
--------------------10000011
y calculando el complemento a 1 (ya que no tiene acarreo) tenemos que el resultado
= -01111100. Lo cual es correcto.
Por qu haramos una resta con complemento? La suma es mucho ms sencilla de
implementar en los sistemas digitales; y por otro lado, aunque en base 10 no
tenemos problemas para realizar una resta, hacer el mismo proceso para otras bases
no nos ser tan intuitivo por lo que estos mtodos facilitaran el proceso del clculo.
Como comentario final me gustara acotar que las computadoras trabajan los
nmeros negativos a travs del complemento a dos. Para ellas, el primer bit del byte
indica el signo. Si este es uno (1) querr decir que el nmero es negativo. Por lo tanto,
y basndonos en este ltimo ejemplo por el mtodo de complemento a dos, al
realizar la resta de 110010 - 10101110 el resultado que almacena el computador en
sus registros o variables es en realidad el nmero (10000100)2 o lo que es lo mismo

http://lasclases.com/CircuitosLogicos/tema1.html

26/07/2008

TEMA 1

Pgina 19 de 19

(84)16. Al tener el bit ms significativo activo, representa que es un nmero negativo


y que el mismo es su complemento a 2.
Pues bien, esto es lo ltimo en este captulo. Para el prximo hablaremos de Cdigos
binarios. lgebra de Boole. Funciones lgicas. Compuertas lgicas.

http://lasclases.com/CircuitosLogicos/tema1.html

26/07/2008

También podría gustarte