Si os metéis en el sistema binario, hay ciertos palabras y términos que vais a encontrar de forma inevitable. Bit, Byte, y en menor medida Char y Word.
Todas ellas se refieren a cantidades de información. Son fáciles de entender, aunque con mucha frecuencia se mezclan entre ellas. Así que vamos a explicarlas brevemente, para aprender hablar con propiedad.
Bits
El Bit (binary digit) es la unidad más pequeña de información en el sistema binario. El término “bit” fue acuñado por el matemático John Tukey en 1946..
Como su nombre dice, es cada uno de los dígitos que forman parte de un número binario. Cada bit puede tener uno de dos valores posibles, 0
o 1
, y se utiliza para representar un solo dato o información.
En la electrónica digital, los dispositivos electrónicos se basan en la presencia o ausencia de voltaje para indicar si un bit está en 0
o 1
.
Bytes
Un Byte es una secuencia de bits que el ordenador es capaz de gestionar “a la vez”. El término se originó en los años 50 en IBM, donde “byte” (mordisco) hacía referencia a la cantidad de información que un ordenador podía “morder” de una vez.
En la actualidad, en la mayoría de máquinas un Byte tiene una longitud de 8 bits. Pero que conste que esto no siempre es así. Existieron y existen máquinas donde el Byte son 4, 6, 7, o 16 bits.
Elegir 8 bits como estándar estuvo muy relacionado con la necesidad de codificar caracteres, como veremos a continuación. También fue un factor importante que 8 es una potencia de 2 (es 2³), así que resultaba un número conveniente.
No obstante en la actualidad, en general, en la mayoría de las veces al decir Byte nos referimos a 8 bits agrupados. Con ellos podemos cualquier número entre 0 y 255 (2⁸ - 1).
No obstante, sería más correcto denominar específicamente al conjunto de 8 bits Octeto, para no llevar a error en otras máquinas. De hecho así se hace, por ejemplo en algunos textos de comunicación.
Char
Un Char (del inglés “character”) es un conjunto de bits que representan un carácter. No es muy conocido, pero el concepto de Char y Byte han estado siempre muy relacionados.
Codificar y tratar texto ha sido siempre un requisito de los ordenadores y, sobre todo al principio, no era algo tan sencillo. Si existieron máquinas con Bytes de 4, 6, 7, 8 bits, está relacionado precisamente con tener capacidad para almacenar un carácter. (¿Curioso no?)
En cualquier caso, en la mayoría de sistemas y “casi casi siempre”, la longitud de un Char y es la misma que la de un Byte.
Words
Un Word (palabra) es un conjunto de Bytes que la máquina usa internamente para trabajar “en bloque”. Se denominó así porque un “Word” es un conjunto de Char. Y ya hemos dicho que Char y Byte son casi lo mismo.
Las máquinas modernas no trabajan internamente únicamente con un Byte, si no que trabajan con grupos de varios Bytes a la vez. Internamente están diseñadas para funcionar así, manejando bloques más grandes.
El tamaño de la palabra se define por la arquitectura del procesador y varía de una máquina a otra. En la mayoría de las computadoras modernas, una palabra consta de 32 bits o 64 bits.
Por ejemplo, una máquina de 32 bits trabajará con bloques de 4 Bytes a la vez, por ejemplo, para realizar los cálculos o almacenar posiciones de memoria. Una máquina de 64bits trabajará con bloques de 8 Bytes.
Sin embargo, salvo que estemos haciendo cosas a muy bajo nivel, en general no tendremos que preocuparnos demasiado por ello (pero no está de más que conozcáis el término).
MSB y LSB
Dos términos que os encontraréis a veces son MSB y LSB. Son acrónimos comunes en el contexto de la representación binaria de datos, como en sistemas digitales y de computación.
En este contexto “significativo” es un sinónimo de “peso” en el número. Los bit más a la izquierda tienen mayor “peso” porque corresponden con potencias mayores de 2.
- MSB (Most Significant Bit): Este término se refiere al bit más significativo en un número binario. El bit más significativo es el primer bit a la izquierda.
- LSB (Least Significant Bit): Este término se refiere al bit menos significativo en un número binario. El bit menos significativo es el último bit a la derecha.
Por ejemplo, en el número binario de 8 bits 11010110
, el bit más significativo (MSB) sería el primer bit a la izquierda. Mientras que el bit menos significativo (LSB) sería el 0
que hay a la derecha.
Muchas veces encontraréis en bibliografía los términos MSB y LSB. Es una forma más precisa y rigurosa que referirse al “bit más a la izquierda” o al “bit más a la derecha”. Además nos protege de que (vete tú a saber porqué motivo) alguién tuviera la genial idea de almacenar un número binario “al revés”.
Sin embargo en este curso, yo seguiré diciendo “bit a la izquierda” y “bít a la derecha” porque, en mi opinión, entiende mejor. (pero si encontráis los términos, que sepáis lo que significan).