Conversor de Bases Numéricas

Convierte números entre las bases binario, octal, decimal y hexadecimal

Number Base Converter

Number Base Information

Binary: Uses digits 0-1
Octal: Uses digits 0-7
Decimal: Uses digits 0-9
Hexadecimal: Uses 0-9, A-F

Guía Completa de Conversión de Bases Numéricas

Guía completa sobre sistemas binario, octal, decimal, hexadecimal y notación posicional

Entendiendo las Bases Numéricas

Las Cuatro Bases Más Comunes

  • Binario (Base 2): dígitos 0–1, usado en todos los ordenadores digitales
  • Octal (Base 8): dígitos 0–7, usado en permisos de archivos Unix
  • Decimal (Base 10): dígitos 0–9, el conteo humano cotidiano
  • Hexadecimal (Base 16): dígitos 0–9 y A–F, usado en programación y colores

Sistema de Valor Posicional

  • El valor de cada dígito = dígito × base^posición (de derecha a izquierda desde 0)
  • Binario 1011 = 1×8 + 0×4 + 1×2 + 1×1 = 11 decimal
  • Hex 1F = 1×16 + 15×1 = 31 decimal
  • Octal 17 = 1×8 + 7×1 = 15 decimal
  • Convenciones de prefijo: 0b = binario, 0o = octal, 0x = hexadecimal

Tabla de Referencia de Conversión

Dec → Binario → Hex (0–15)

  • 0 = 0000 = 0x0
  • 1 = 0001 = 0x1
  • 2 = 0010 = 0x2
  • 3 = 0011 = 0x3
  • 4 = 0100 = 0x4
  • 5 = 0101 = 0x5
  • 6 = 0110 = 0x6
  • 7 = 0111 = 0x7
  • 8 = 1000 = 0x8
  • 9 = 1001 = 0x9
  • 10 = 1010 = 0xA
  • 11 = 1011 = 0xB
  • 12 = 1100 = 0xC
  • 13 = 1101 = 0xD
  • 14 = 1110 = 0xE
  • 15 = 1111 = 0xF

Potencias de 2 de Referencia

  • 2^0 = 1
  • 2^4 = 16
  • 2^8 = 256
  • 2^10 = 1.024 (1K)
  • 2^16 = 65.536
  • 2^20 = 1.048.576 (1M)
  • 2^24 = 16.777.216
  • 2^30 = 1.073.741.824 (1G)
  • 2^32 = 4.294.967.296
  • 2^64 ≈ 1,8×10^19

Grupos de Dígitos Hex

  • 1 dígito hex = 4 bits (nibble)
  • 2 dígitos hex = 1 byte (8 bits)
  • 4 dígitos hex = 2 bytes (palabra de 16 bits)
  • 6 dígitos hex = 3 bytes (color RGB)
  • 8 dígitos hex = 4 bytes (entero de 32 bits)
  • 16 dígitos hex = 8 bytes (64 bits / segmento UUID)

Aplicaciones Profesionales

Informática y Programación

  • Las operaciones bit a bit usan binario
  • Hex para direcciones de memoria
  • Valores de color (#RRGGBB)
  • Puntos de código ASCII/Unicode (ej. 'A' = 0x41 = 65)
  • Flags de máscara de bits
  • Redes (direcciones IP, máscaras de subred)
  • Lenguaje ensamblador

Sistemas y Redes

  • Direcciones IPv4: 4 octetos decimales (192.168.1.1)
  • Máscara de subred: /24 = 255.255.255.0 = 0xFFFFFF00
  • Dirección MAC: 6 pares hex (AA:BB:CC:DD:EE:FF)
  • IDs de VLAN: decimal
  • Números de puerto: decimal 0–65535
  • Desplazamientos de dirección de memoria: hex

Electrónica Digital

  • Valores de registros mostrados en hex
  • Vectores de interrupción (ej. 0x0000–0x03FF)
  • Máscaras de pines GPIO en binario
  • Dirección I2C: 7 bits (0x3C = 60 decimal)
  • Tramas de datos SPI
  • Sumas de verificación CRC en hex
  • Archivos hex de firmware (formato Intel HEX)

Unix y Sistemas de Archivos

  • Permisos chmod: octal (755 = rwxr-xr-x; 644 = rw-r--r--)
  • Números mágicos de archivos en hex (ELF: 0x7F454C46)
  • Números de inodo: decimal
  • Sectores de disco
  • Análisis de volcados de memoria
  • Inspección de volcados de núcleo
  • Direcciones del kernel en hex

Buenas Prácticas con Bases Numéricas

Técnicas de Conversión

  • Para números grandes: convierte usando decimal como paso intermedio
  • Agrupa los bits binarios de 4 en 4 para leer hex fácilmente
  • Memoriza los valores del 0 al 15 en decimal, binario y hex
  • Usa prefijos de notación para evitar ambigüedades
  • Verifica con la conversión inversa
  • Para coma flotante, entiende el formato IEEE 754

Errores Comunes

  • Confundir el 0 (cero) con la O (letra) en hex
  • Olvidar que A–F deben ir en mayúsculas en hex
  • El bit de signo en el complemento a dos
  • Desbordamiento al usar un ancho de bits fijo
  • Octal y hex se pueden confundir (017 = 15 decimal en C, no 17)
  • Los ceros iniciales pueden cambiar la interpretación en algunos lenguajes

Ejemplos de Bases Numéricas

Conversiones Comunes

  • 255 decimal = 0xFF = 11111111 binario
  • 256 = 0x100 = 100000000 binario
  • 1.024 = 0x400 = 10000000000 binario
  • 65.535 = 0xFFFF = 16 unos en binario
  • 42 = 0x2A = 101010 binario
  • 16 = 0x10 = 10000 binario
  • 127 = 0x7F = 1111111 binario

Ejemplos de Programación

  • Color HTML blanco: #FFFFFF = rgb(255,255,255)
  • chmod 755 = 111 101 101 binario
  • IP 192.168.0.1 = 0xC0A80001
  • Puerto 443 (HTTPS) = 0x1BB = 110110011 binario
  • ASCII 'Z' = 90 = 0x5A = 1011010
  • Byte nulo = 0x00 = 0 = 00000000
  • DEL = 0x7F = 127

Almacenamiento y Memoria

  • 1 KB = 1.024 bytes = 0x400
  • 1 MB = 1.048.576 = 0x100000
  • 1 GB = 0x40000000
  • 4 GB (límite 32 bits) = 0xFFFFFFFF + 1
  • Ejemplo de dirección RAM: 0xDEADBEEF
  • Ejemplo de puntero de pila: 0x7FFE0000
  • Dirección BIOS: 0xFFFFFFF0

Preguntas Frecuentes

¿Por qué los ordenadores usan binario?
Los ordenadores están construidos con transistores que tienen dos estados fiables: encendido (1) y apagado (0). El binario se mapea directamente a estos estados físicos. Las bases más altas requerirían transistores con múltiples niveles de voltaje, más difíciles de fabricar con fiabilidad y más susceptibles al ruido.
¿Para qué se usa el hexadecimal?
El hexadecimal (base 16) es una forma compacta de escribir binario. Cada 4 bits = 1 dígito hex, por lo que los bytes de 8 bits = 2 dígitos hex. El hex aparece en todas partes en informática: direcciones de memoria (0x7FFF), códigos de color (#FF5733), listados de código máquina y códigos de error (0xDEADBEEF).
¿Cómo convierto binario a decimal?
Multiplica cada dígito binario por 2 elevado a su posición (contando desde 0 por la derecha) y suma todos los resultados. Por ejemplo: 1011 = 1×8 + 0×4 + 1×2 + 1×1 = 8 + 0 + 2 + 1 = 11 decimal.
¿Cuál es la diferencia entre octal y decimal?
El decimal usa 10 dígitos (0–9) y es el sistema de conteo estándar de los humanos. El octal usa solo 8 dígitos (0–7) y cada dígito representa 3 bits. El octal se usaba históricamente en los permisos de Unix (ej. chmod 755) porque se corresponde limpiamente con grupos de 3 bits en binario.
¿Cómo se lee un código de color hexadecimal?
Un color hex como #1A2B3C se divide en tres pares de 2 dígitos: R=1A (26 decimal), G=2B (43 decimal), B=3C (60 decimal). Cada par va de 00 (0) a FF (255), dando 256 niveles de intensidad por canal y más de 16 millones de colores posibles.
¿Por qué 1 KB equivale a 1.024 bytes y no a 1.000?
Los ordenadores trabajan con potencias de 2. La potencia de 2 más cercana a 1.000 es 2^10 = 1.024, así que los primeros informáticos usaron 'kilo' para significar 1.024 en lugar del estándar SI de 1.000. Por eso 1 KB = 1.024 bytes, 1 MB = 1.048.576 bytes y 1 GB = 1.073.741.824 bytes.