Ir al contenido principal

Binarios

El sistema numérico que utilizamos en la actualidad, está basado en el número diez. Es posible crear sistemas numéricos basados en otros números. De todos estos, el más simple es el que tiene como base el número dos. A este sistema lo conocemos como binario.

En nuestro sistema de base diez, decimos que, según su posición, las cifras son unidades, decenas, centenas, etc. Estas son potencias de base diez.

Ejemplos:

Unidad de mil (10^3) Centena (10^2) Decena (10^1) Unidad (10^0)
6 8 3 3
1 6 3 6
8 0
7 0
3 2
3 7
9
5
2

Números generados con random.org

Podemos hacer lo mismo con base dos:

Octetos (2^3) Cuartedos (2^2) Pares (2^1) Unidades (2^0)
1 1 1 1
1 1 0 1
1 0 0 0
1 0 1
1 0 0
1 0
1
0

Números generados con random.org

nota: De la misma forma que los números en base diez, tienen cifras que van del cero al nueve (diez menos uno)... los números en base dos tienen cifras que van del cero al uno (dos menos uno).


Convertir de base dos a base diez

Basta con multiplicar las cifras por la potencia de su posición y sumarlas. Debido las cifras son solamente cero y uno, y que todo número multiplicado por cero es cero, y todo número multiplicado por uno es uno... basta con sumar las potencias de las cifras que son uno.

Octetos (2^3) Cuartedos (2^2) Pares (2^1) Unidades (2^0) Calculo Valor en base diez
1 1 1 1 8 + 4 + 2 + 1 15
1 1 0 1 8 + 4 + 1 13
1 0 0 0 8 8
1 0 1 4 + 1 5
1 0 0 4 4
1 0 2 2
1 1 1
0 0 0

Convertir de base diez a base dos

Para esto los pasos el algoritmo es el siguiente:

  1. Buscar la potencia de dos más grande que cabe en el número
  2. Anotar un uno en la cifra de la potencia que encontramos
  3. Restarle al número la potencia que encontramos
  4. Si lo que queda es mayor que cero, repetir desde el inicio

Nota: Este algoritmo solo aplica para valores positivos.

Es conveniente tener una tabla con las potencias de dos - al menos las más comunes. Por ejemplo:

2^138172
2^124096
2^112048
2^101024
2^9512
2^8256
2^7128
2^664
2^532
2^416
2^38
2^24
2^12
2^01

Ahora, tomemos como ejemplo el número 6833.

  1. La potencia más grande que cabe en 6833 es 4096 (2^12)
  2. 2^122^112^102^92^82^72^62^52^42^32^22^12^0
    1 0 0 0 0 0 0 0 0 0 0 0 0
  3. 6833 - 4096 = 2737
  4. Repetir
  1. La potencia más grande que cabe en 2737 es 2048 (2^11)
  2. 2^122^112^102^92^82^72^62^52^42^32^22^12^0
    1 1 0 0 0 0 0 0 0 0 0 0 0
  3. 2737 - 2048 = 689
  4. Repetir
  1. La potencia más grande que cabe en 689 es 512 (2^9)
  2. 2^122^112^102^92^82^72^62^52^42^32^22^12^0
    1 1 0 1 0 0 0 0 0 0 0 0 0
  3. 689 - 512 = 177
  4. Repetir
  1. La potencia más grande que cabe en 177 es 128 (2^7)
  2. 2^122^112^102^92^82^72^62^52^42^32^22^12^0
    1 1 0 1 0 1 0 0 0 0 0 0 0
  3. 177 - 128 = 49
  4. Repetir
  1. La potencia más grande que cabe en 49 es 32 (2^5)
  2. 2^122^112^102^92^82^72^62^52^42^32^22^12^0
    1 1 0 1 0 1 0 1 0 0 0 0 0
  3. 49 - 32 = 17
  4. Repetir
  1. La potencia más grande que cabe en 17 es 16 (2^4)
  2. 2^122^112^102^92^82^72^62^52^42^32^22^12^0
    1 1 0 1 0 1 0 1 1 0 0 0 0
  3. 17 - 16 = 1
  4. Repetir
  1. La potencia más grande que cabe en 1 es 1 (2^0)
  2. 2^122^112^102^92^82^72^62^52^42^32^22^12^0
    1 1 0 1 0 1 0 1 1 0 0 0 1
  3. 1 - 1 = 0
  4. Fin

El número 6833, al convertirse a binario es: 1101010110001

Comentarios