Publicado el 07.08.2021 a las 12:01
El sistema o código binario es un sistema numérico que sólo usan el 1 y el 0. Es el sistema utilizado en electrónica y todo lo que engloba como ordenadores, smartphones...
Sin embargo, nosotros los humanos usamos el sistema decimal.
Porque son los dos estados que podemos conocer con la electricidad, lo puedes ver como 1 = encendido y 0 = apagado.
A la unidad de información digital que almacena el valor de 1 ó 0 se le llama bit.
Los bits se agrupan en grupos de igual tamaño a la hora de almacenarlos internamente, e incluso a la hora de intercambiarlos.
Por motivos históricos (probablemente debido al hecho que el primer boom de los aparatos digitales tuvo lugar cuando la tendencia era agruparlos en grupos de ocho) han provocado que a la hora de trabajar con ellos tengan generalmente un tamaño de un múltiplo de ocho, y a la hora de enviarlos se agrupen preferentemente en grupos de ocho.
A cada uno de esos grupos de ocho bits se le denomina octeto o byte.
Si disponemos los ocho bits uno junto a otro, se asemejaría a un número de ocho cifras, con la salvedad de que cada cifra solo puede valer 0 o 1
1 0 1 0 1 0 1 0
Frecuentemente los bits se identifican por el número de exponente correspondiente.
Así el bit de la derecha del byte sería el cero y el de la izquierda sería el siete.
Es posible agrupar bytes que estén correlativos en la memoria de un aparato digital para conseguir unidades de almacenamiento mayores.
Así, si agrupamos dos bytes tenemos la palabra (word).
El número binario, que tendría dieciséis bits, resultante sería el resultado de concatenar los bits de ambos bytes.
10101010 : 01010101 -> 1010101001010101
No obstante, dependiendo del aparato digital, es posible que la concatenación se haga al final del segundo byte, aunque resulte poco intuitivo.
De hecho así lo hacen nuestros PCs.
10101010 : 01010101 -> 0101010110101010
Así, con una palabra podemos abarcar valores de 0000000000000000 correspondiente a 0, a 1111111111111111 correspondiente a 65535.
De la misma manera que con los bits, el byte que corresponde a las ocho cifras de la derecha es el que menos afecta al decimal correspondiente por lo que se denomina byte menos significativo, y el que corresponde a las ocho cifras de la izquierda, que afecta más, recibe el nombre de byte más significativo.
Los que concatenan los bytes en la palabra de forma que correlativa se les denominan de clase big-endian
10101010 : 01010101 -> 1010101001010101
Los que concatenan al final del segundo byte se denominan de clase little-endian.
10101010 : 01010101 -> 0101010110101010
Dobles palabras (double word o dword) son agrupaciones de 2 palabras.
También existen cuádruple palabra (qword), pero son menos comunes en las comunicaciones industriales salvo para números reales y otros casos muy puntuales.
Quizás hoy en día no tenga mucho sentido hacer este tipo de conversiones de forma manual puesto que contamos con calculadoras de conversiones, pero a mí me gusta recordarlo de vez en cuando.
Si queremos asignarle un peso a cada uno de los números en el sistema decimal, sabemos que los números tendrán menos peso mientras más a la derecha estén. Te pongo un ejemplo para comprenderlo mejor.
El número 123 está compuesto por el 100 (centenas) + 20 (decenas) + 3 (unidades), a esto me refieron con que tienen menos peso, el 3 pesa menos que el 2 en el número 123
Dicho de otra forma, el 123 es el resultado de 1 x 102 + 2 x 101 + 3 x 100
En el sistema binario sucede lo mismo, mientras más a la derecha menos peso.
Ahora sí, vamos a calcular el valor decimal de un número binario.
Para ello, empezando desde la derecha asignando de forma creciente una potencia de 2 que multiplicaremos por el número en cuestión.
Veamos un ejemplo para entenderlo mejor, vamos a pasar a decimal el número binario 1001
Hay varias formas de hacerlo, pero a mí me gusta así:
Antes de nada, debes de saber que:
Veamos un ejemplo, vamos a sumar:
10011000 + 00010101
Para ello se pone un número encima de otro y se comienza de derecha a izquierda y de arriba hacia abajo.
10011000
00010101
Te lo dejo de una forma más gráfica:
1
10011000
00010101
10101101
Al igual que con los decimales, todo número multiplicado por 0 es 0. Mucho más fácil que la suma.
Entiendo que no te hace falta ningún ejemplo 😉
Hasta luego 🖖