LABORATORIO 2 - Jhoselin826/FundComputaciones-OF20 GitHub Wiki

Sistemas de numeración

Un sistema de numeración es un conjunto de símbolos y reglas que permi¬ten representar datos numéricos. Los sistemas de numeración actuales son sistemas posicionales, que se caracterizan porque un símbo¬lo tiene distinto valor según la posición que ocupa en la cifra.

Conversión de binario a decimal

Binario a decimal involucra conocer la posición y por consecuencia el valor del bit binario. Si la posición comienza de derecha a izquierda, el número se conoce como un arreglo big-endian. Por el contrario en un arreglo little-endian, el acomodo es opuesto. Una vez que tenemos la posición elevaremos la base 2 (2 es por los dos posibles estados del sistema binario) a la posición en la que este el bit. El segundo paso es multiplicar el bit binario, ya sea 1 o 0 por este valor. En resumen:

  1. Obtener la posición.
  2. Obtener el valor del bit. 2^posición.
  3. Multiplicar el valor del bit (1 ó 0) por el valor anterior.
  4. Sumar cada uno de los resultados de los bits a convertir. En la siguiente figura se muestra el proceso completo así como el resultado. EJEMPLOS:

EJEMPLO-1. Convertir de binario a decimal el siguiente valor 1010. Solucíón-1. Un número binario de 4 posiciones tiene valores fijos. Por ejemplo 8421 para cada una de las posiciones 3210. Entonces lo más fácil para números de 4 bits, es acordarse de esta codificación. Así el número 1010 es en realidad la suma de 1×8+1×2 = 10.

1×8 + 0x4 + 1×2 + 0x1 = 10 EJEMPLO-2. Convertir de binario a decimal el siguiente valor 1101 1001. Solución-2. El proceso se comienza a complicar cuando tenemos números binarios de una longitud mayor a 8. Esto es debido a que ahora tenemos que verificar la posición de cada uno de los 8 bits. El proceso seria: 1×27+1×26+0x25+1×24+1×23 +0x22 + 0x21 + 1×20 = 128 + 64 + 0 + 16 + 8 + 0 + 0 + 1 = 217

Conversión entre números decimales y binarios

Convertir un número decimal al sistema binario es muy sencillo: basta con realizar divisiones sucesivas por 2 y escribir los restos obtenidos en cada división en orden inverso al que han sido obtenidos. EJEMPLOS:

Ejemplo-1 Convertir al sistema binario el número 77 en base 10 haremos una serie de divisiones que arrojarán los restos siguientes:

  • 77 : 2 = 38 Resto: 1
  • 38 : 2 = 19 Resto: 0
  • 19 : 2 = 9 Resto: 1
  • 9 : 2 = 4 Resto: 1
  • 4 : 2 = 2 Resto: 0
  • 2 : 2 = 1 Resto: 0
  • 1 : 2 = 0 Resto: 1

y, tomando los restos en orden inverso obtenemos la cifra binaria: 77 en base 10 = 1001101 en base 2

EJEMPLO-2

Vamos a transformar el número 153 a binario:

  • 153: 2 = 76 y el resto es igual a 1
  • 76: 2 = 38 y el resto es igual a 0
  • 38: 2 =19 y el resto es igual a 0
  • 19: 2 = 9 y el resto es igual a 1
  • 9: 2= 4 y el resto es igual a 1
  • 4: 2 =2 y el resto es igual a 0
  • 2: 2 = 1 y el resto es igual a 0
  • 1: 2 = 0 y el resto es igual a 1 Cómo ya no podemos seguir, ordenamos los restos de atrás hacia adelante: 10011001

Operaciones con números binarios

Suma de números Binarios

Las posibles combinaciones al sumar dos bits son: • 0 + 0 = 0 • 0 + 1 = 1 • 1 + 0 = 1 • 1 + 1 = 10

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 arrastre). A continuación se suma el acarreo a la siguiente columna: 1 + 0 + 0 = 1, y seguimos hasta terminar todas la columnas (exactamente como en decimal).

Resta de números binarios

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: • 0 - 0 = 0 • 1 - 0 = 1 • 1 - 1 = 0 • 0 - 1 = no cabe o se pide prestado al próximo. 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. 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: • 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. Un último ejemplo: vamos a restar 219 - 23 = 196, directamente y utilizando el complemento a dos: Y, despreciando el bit que se desborda por la izquierda, llegamos al resultado correcto: 11000100 en binario, 196 en decimal.

• Utilizando el complemento a 1. La resta de dos números binarios puede obtenerse sumando al minuendo el complemento a uno del sustraendo y a su vez sumarle el bit de overflow (bit que se desborda).

Producto de números binarios

El algoritmo del producto en binario es igual que en números decimales; aunque se lleva 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. Por ejemplo, multipliquemos 10110 por 1001: En sistemas electrónicos, donde se suelen utilizar números mayores, no se utiliza este método sino otro llamado algoritmo de Booth.

División de números binarios

La división en binario es similar a la decimal, la única diferencia es que a la hora de hacer las restas, dentro de la división, estas deben ser realizadas en binario. Bibliografía (s.f.). Obtenido de http://centros.edu.xunta.es/iesmanuelchamosolamas/electricidade/fotos/numeracion.htm González, L. (s.f.). Departamento de la Tecnologia . Obtenido de http://platea.pntic.mec.es/~lgonzale/tic/binarios/numeracion.html Marmolejo, R. (2019). HeptroTutoriales. Obtenido de https://hetpro-store.com/TUTORIALES/binario-a-decimal/