Operaciones con binarios

28
Informática Bioingeniería

Transcript of Operaciones con binarios

Page 1: Operaciones con binarios

Informática

Bioingeniería

Page 2: Operaciones con binarios

Representación Números

Negativos

En matemáticas, los números negativos

en cualquier base se representan del

modo habitual, precediéndolos con un

signo «−». Sin embargo, en

una computadora, hay varias formas de

representar el signo de un número.

Page 3: Operaciones con binarios

Representación Números

Negativos

Existen varios métodos de extender

el sistema binario para

representar números con signo:

signo y magnitud

complemento a uno

complemento a dos

Page 4: Operaciones con binarios

Complemento a dos

En el caso de los números binarios, sería el complemento a dos y la forma de obtener el complemento a dos de un número binario es :

empezando desde la derecha encontramos el primer '1'

Negamos a todos los bits que quedan por la izquierda

○ 0101001 0101100

○ 1010111 1010100

Page 5: Operaciones con binarios
Page 6: Operaciones con binarios

Complemento a dos

De esta forma, en la representación por Complemento a dos de un número signado de n-bits asignamos: un bit para representar el signo. Ese bit a

menudo es el bit más significativo y, por convención: un 0 denota un número positivo, y un 1 denota un número negativo;

los (n-1) bits restantes para representar el significando que es la magnitud del número en valor absoluto para el caso de números positivos, o bien, en el complemento a dos del valor absoluto del número, en caso de ser negativo.

Page 7: Operaciones con binarios

Complemento a dos

Sea una representación en formato de Complemento a dos que nos permite codificar en binario en punto fijo con 8 bits (un byte).

Se le otorga 1 bit para el signo y 7 bits para la magnitud. Con 8 bits, podemos representar, 28 = 256 números. Los cuales, según éste formato, van a estar repartidos entre 128 números positivos (bit de signo en 0) y 128 números negativos (bit de signo en 1).

Page 8: Operaciones con binarios

Complemento a dos

Supongamos ahora, que tenemos que

representar el número -9710(se necesita 8

bits para representarlo). Procedemos a:

Tomar nota del signo del número -9710, que

siendo negativo, llevará como bit de signo un 1;

Como el signo es negativo, el número a

continuación del bit de signo, deberá

expresarse en complemento a dos. Al realizar la

conversión: el valor absoluto de -9710 es |-9710|

= 9710. Que en binario es: 11000012, el

complemento a dos: 00111112;

Page 9: Operaciones con binarios

Complemento a dos

Colocar todo junto, el número -9710 en binario

con formato de Complemento a dos

es: 100111112.

Donde el 1 en el bit más significativo indica un

número negativo, y 00111112 es el significando

en complemento a dos del valor absoluto del

número.

Page 10: Operaciones con binarios

Complemento a Dos

45 en binario es 101101, con 6 dígitos.

Complementos a dos de 45 = 010011

El - 45, expresado en complemento a dos

usando 8 bits sería 11010011

Expresados en 16 bits serían

1111111111010011

Page 11: Operaciones con binarios

Complemento a dos

Para el caso inverso, dado un número

binario en Complemento a dos, por

ejemplo, 101101012, procedemos a:

Analizar el bit más significativo, que siendo

un 1 indica que el número es negativo;

Convertir el significando a la base deseada,

el complemento a dos:

C2(0110101)=10010112 |7510|. Siendo que

el bit de signo es 1, el número real es -7510.

Page 12: Operaciones con binarios

A practicar…

Convertir los siguientes números a complemento a dos: - 34

- 165

- 83

- 141

Convertir de Complementos a dos a números: 10110101

00110110

1000111111011101

000011000011100

Page 13: Operaciones con binarios

Operaciones con Binarios

Suma

Resta

Multiplicación

Page 14: Operaciones con binarios

Suma

Las posibles combinaciones al sumar dos bits son:

0 + 0 = 0

0 + 1 = 1

1 + 0 = 1

1 + 1 = 10

Note que al sumar 1 + 1 es 102, es decir, llevamos 1 a la siguiente posición de la izquierda (acarreo). Esto es equivalente en el sistema decimal a sumar 9 + 1, que da 10: cero en la posición que estamos sumando y un 1 de acarreo a la siguiente posición.

Page 15: Operaciones con binarios

De la misma forma que hacemos cuando sumamos

números del sistema decimal, esta operación

matemática la comenzamos a realizar de derecha a

izquierda.

Cuando se suma el 1+1, se aplica lo que dice

en la tabla se escribe el 0 y se acarrea o se

lleva el 1.

ACARREO Se suma con el acarreo.

Si se vuelve a sumar

1+1, se vuelve a utilizar

el acarreo

ACARREO

Page 16: Operaciones con binarios

10112

1112 1 + 1 = 10 pones 0 y llevas 1

1 + 1+ 1 = 11 pones 1 y llevas 1

1 + 1 = 10 pones 0 y llevas 1

1 + 1 = 10

1

100102

1

Sumar 10112 + 1112

1

Page 17: Operaciones con binarios

Suma

Se puede convertir la operación binaria en una operación decimal, resolver la decimal, y después transformar el resultado en un (número) binario.

Operamos como en el sistema decimal: comenzamos a sumar desde la derecha, en nuestro ejemplo, 1 + 1 = 10, entonces escribimos 0 en la fila del resultado y llevamos 1 (este "1" se llama acarreo o arrastre).

A continuación se suma el acarreo a la siguiente columna: 1 + 0 + 0 = 1, y seguimos hasta terminar todas las columnas (exactamente como en decimal).

Page 18: Operaciones con binarios

A sumar…

1112 + 10012

1102 + 11102

11112 + 1112

0111012 + 1011112

1101112 + 10112 + 100112

Page 19: Operaciones con binarios

Resta

El algoritmo de la resta en binario es el mismo que

en el sistema decimal. Pero conviene repasar la

operación de restar en decimal para comprender

la operación binaria, que es más sencilla. Los

términos que intervienen en la resta se llaman

minuendo, sustraendo y diferencia.

Las restas básicas 0-0, 1-0 y 1-1 son evidentes:

Page 20: Operaciones con binarios

Resta

La resta 0 - 1 se resuelve, igual que en

el sistema decimal, tomando una unidad

prestada de la posición siguiente: 10 - 1

= 1 y me llevo 1, lo que equivale a decir

en decimal, 2 - 1 = 1. Esa unidad

prestada debe devolverse, sumándola,

a la posición siguiente.

Page 21: Operaciones con binarios

Cuando se resta 0-1, se aplica lo que dice en

la tabla se escribe el 1 y se acarrea o se lleva

el 1. ACARREO

Se resta con el acarreo, pero

de abajo hacia arriba con el

primer número.

RESPUESTA

Page 22: Operaciones con binarios

Resta

A pesar de lo sencillo que es el procedimiento, es

fácil confundirse. Tenemos interiorizado el sistema

decimal y hemos aprendido a restar

mecánicamente, sin detenernos a pensar en el

significado del arrastre. Para simplificar las restas

y reducir la posibilidad de cometer errores hay

varias soluciones:

Dividir los números largos en grupos. En el siguiente

ejemplo, vemos cómo se divide una resta larga en tres

restas cortas:

Page 23: Operaciones con binarios

Resta

Utilizando el complemento a dos. La resta de

dos números binarios puede obtenerse sumando

al minuendo el complemento a dos del

sustraendo. Veamos algunos ejemplos. Hagamos

la siguiente resta, 91 - 46 = 45, en binario:

En el resultado nos sobra un bit, que se desborda

por la izquierda. Pero, como el número resultante no

puede ser más largo que el minuendo, el bit sobrante

se desprecia.

Page 24: Operaciones con binarios

A practicar…

10011101 – 01110000

00110010 – 11111011

11111000 – 00011110

Page 25: Operaciones con binarios

Multiplicación

La tabla de multiplicar para números binarios es la siguiente:

El algoritmo del producto en binario es igual que en números decimales; aunque se lleva a cabo con más sencillez, ya que el 0 multiplicado por cualquier número da 0, y el 1 es el elemento neutro del producto.

Page 26: Operaciones con binarios

Lo que queda no es más que una suma,

se utiliza las reglas de la suma ,

teniendo muy en cuenta el acarreo

Se aplica lo que dice en la regla todo número

multiplicado por 0 es 0 y todo número

multiplicado por 1 es igual a el mismo número

El resultado de la suma es la respuesta

del ejercicio

Page 27: Operaciones con binarios

A practicar …

10010111 * 11

00110111 * 110

11101110 * 0011

Page 28: Operaciones con binarios