Anda di halaman 1dari 5

Profesor: Claudio Pinto Celis

ARITMTICA BINARIA
En los procesos lgicos se realizan las operaciones matemticas suma,
sustraccin, multiplicacin y divisin. Quien ejecuta estas operaciones es la
conocida Unidad Aritmtico Lgica, (ALU) ubicada en la CPU de los procesadores.
Realiza operaciones aritmticas, con datos numricos expresados en el sistema
binario.

Las operaciones se hacen del mismo modo que en el sistema decimal, pero
debido a la sencillez del sistema de numeracin, pueden hacerse algunas
simplificaciones que facilitan mucho la realizacin de las operaciones.

Suma
La tabla de sumar, en binario, es ms sencilla que en decimal. :
Sumandos Resultado
0 0 0
0 1 1
1 1 10

Las sumas 0 + 0, 0 + 1 y 1 + 0 son evidentes:


0+0=0
0+1=1
1+0=1
Pero la suma de 1+1, que en el sistema decimal es 2 , debe escribirse en binario
con dos cifras (10) y, por tanto 1+1 es 0 y se arrastra una unidad, que se suma a la
posicin siguiente a la izquierda.

(001101)2 + (100101)2 = (110010)2


(13)10 + (37)10 = (50)10
(1011011) 2+ (1011010) 2=
(10110101)2 9110 + 9010 = (181)10
Acarreo
11 s

(101001)2 = (41)10 (1110)2 = (14)10

+ (110011)2 = (51)10 + (1001)2 = (9)10

(1011100)2 = (92)10 (10111)2 (23)10

1
Sustraccin
La resta en binario es igual a la misma operacin que en el sistema decimal y los
trminos que intervienen en la resta se llaman minuendo, sustraendo y diferencia.

La resta 0 - 1 se resuelve igual que en el sistema decimal, tomando una unidad


prestada de la posicin siguiente: 0 - 1 = 1 y me llevo 1 (este valor se resta al
resultado que obtenga, entre el minuendo y el sustraendo de la siguiente
columna), lo que equivale a decir en el sistema decimal, 2 - 1 = 1

0 1

0 0 1

1 1-1 0

Las restas 0 0, 1 0 y 1 1 son evidentes:

0-0=0

1-0=1

1-1=0

0 - 1 = 1 (se transforma en 10 - 1 = 1) (en sistema decimal equivale a 2 - 1


= 1)

. Vase algunos ejemplos:


(111)2 (101)2 =( 010) 2 (7)10 (5)10 = (2)10

(10001)2 (01010)2 = (00111)2 (17)10 (10)10 = (7)10

(11011001)2 (10101011)2 = (00101110)2 (217)10 (171)10 = (46)10

(111101001)2 (101101101)2 = (001111100)2 ( 489)10 (365)10 = (124)10

1 1 acarreos
10001 11011001
-01010 -10101011

00111 00101110

Para simplificar las restas y reducir la posibilidad de cometer errores hay varios
mtodos:

Dividir los nmeros largos en grupos. En el siguiente ejemplo, se ve cmo


se divide una resta larga en tres restas cortas:

2
100110011101 1001 1001 1101
-010101110010 -0101 -0111 -0010
=
010000101011 0100 0010 1011

Utilizando el complemento a dos (C2).

La resta de dos nmeros binarios puede obtenerse sumando al minuendo


el complemento a dos del sustraendo que consiste en invertir 0 por 1 y 1
por 0.

Ejemplo

La siguiente resta, (91 46)10 = (45)10, en binario es:

1 11
1011011
-0101110 el C2 de 0101110 es 1010010 +1010010

0101101 10101101
Se
elimina
En el resultado sobra un bit por la izquierda. Pero, como el nmero resultante no
puede ser ms largo que el minuendo, el bit sobrante se elimina.

Un ltimo ejemplo: vamos a restar (219 23)10 = (196)10, directamente y utilizando


el complemento a dos:

11011011 11011011
-00010111 el C2 de 00010111 es 11101001 +11101001

11000100 111000100
Se
Despreciando el bit que desborda por la izquierda, se llega al resultado: elimina

(11000100)2 =, (196)10

Multiplicacin binaria

La multiplicacin en binario es ms fcil que en cualquier otro sistema de


numeracin. Como los factores de la multiplicacin slo pueden ser 0 o 1, el
producto slo puede ser 0 o 1. Las tablas de multiplicar de cero y uno son muy
fciles.

Multiplican Multiplican Resultad


do do o
0 0 0
0 1 0
1 0 0
1 1 1

x 0 1

3
0 0 0

1 0 1

En una ALU, la operacin de multiplicar se realiza mediante sumas repetidas. Eso


crea algunos problemas en la programacin porque cada suma de dos 1 origina
un arrastre, que se resuelven contando el nmero de 1 y de arrastres en cada
columna. Si el nmero de 1 es par, la suma es un 0 y si es impar, un 1. Luego,
para determinar los arrastres a la posicin superior, se cuentan las parejas de 1
Por ejemplo, multiplique (10110)2 por (1001)2:
10110 x 1001 11101111 x 111011
__________
10110 11101111
00000 1110111
00000 00000000
10110 11101111
11101111
11000110 11101111
______________
11011100010101

En decimal
22 x 9 = 198 239 x 59 = 14101

Divisin binaria
Similar al producto, la divisin es fcil de realizar, dado que no son posibles en el
cociente otras cifras que 1 y 0.
Considrese, (42)10: (6)10 = (7)10, en binario:

Se intenta dividir el dividendo por el divisor, empezando por tomar en ambos el


mismo nmero de cifras (100 entre 110, en el ejemplo). Si no puede dividirse, se
intenta la divisin tomando un dgito ms (1001 entre 100).
Si la divisin es posible, entonces, el divisor slo podr estar contenido una vez en
el dividendo, es decir, la primera cifra del cociente es un 1. En ese caso, el
resultado de multiplicar el divisor por 1 es el propio divisor. Restando las cifras del
dividendo del divisor y se baja la cifra siguiente.
El procedimiento de divisin contina del mismo modo que en el sistema decimal.

101010: 110 divisor

4
-110

1001 1

-110

0110 1 cocientes

110

000 1