Todos los artículos

Sistemas numéricos: para qué sirven el binario, el octal y el hexadecimal

Mucho antes de las computadoras, los mayas ya usaban un sistema posicional propio con base 20 en lugar de base 10 — probablemente porque contaban con dedos de manos y pies. Su lógica era distinta a la del binario o el hexadecimal, pero la idea de fondo es la misma que resuelve esta herramienta: un mismo valor puede escribirse de formas completamente distintas según cuántos símbolos use cada posición.

El sistema vigesimal maya

Los mayas representaban los números con solo tres símbolos — un punto para el 1, una barra para el 5 y una concha para el 0 (uno de los primeros ceros documentados en la historia, independiente del que se desarrolló en la India) —, y los combinaban en posiciones que valían potencias de 20 en lugar de potencias de 10. El cero maya no era un simple marcador de posición: se usaba para cálculos astronómicos y calendáricos de gran precisión.

El hexadecimal en el desarrollo del día a día

Un dígito hexadecimal equivale exactamente a cuatro bits, así que dos caracteres hexadecimales describen un byte de forma compacta: un color CSS como #3A7FD9, una dirección MAC como 00:1A:2B:3C:4D:5E, o una dirección de memoria en un volcado de depuración son, en el fondo, bytes escritos en una base cuatro veces más corta que el binario.

El octal en los permisos de Unix

El octal casi desapareció del uso cotidiano, pero sobrevive en un lugar muy concreto: chmod 755. Cada dígito octal empaqueta tres bits de permiso (lectura, escritura, ejecución), así que 7 significa "rwx" y 5 significa "r-x" — leer de tres en tres bits es más rápido que contar nueve dígitos binarios uno por uno.

Para qué se necesita esto

  • Convertir un color del formato hexadecimal de CSS a valores RGB decimales.
  • Entender la representación binaria de un número al trabajar con operaciones bit a bit.
  • Descifrar permisos octales de archivos en sistemas Unix.

Por qué Base64 no es un sistema de numeración

Base64 suele confundirse con la conversión entre sistemas de numeración por su nombre similar, pero es algo fundamentalmente distinto: es una codificación de datos binarios arbitrarios (por ejemplo, una imagen o un archivo) en una cadena de texto de 64 caracteres, no una forma de escribir un único número. El número 255 en hexadecimal es FF, mientras que ese mismo número codificado en Base64 como un solo byte se ve completamente distinto y tiene un propósito diferente — transmitir datos binarios a través de canales de texto.

Probar la herramienta