Todas las bases usan notación posicional: cada dígito vale dígito × base^posición. El decimal 345 es 3×10² + 4×10¹ + 5×10⁰, y el binario 1101 es 1×2³ + 1×2² + 0×2¹ + 1×2⁰ = 13. Para el camino inverso, divide sucesivamente entre la base de destino y lee los restos al revés: al dividir 13 entre 2 obtienes los restos 1, 0, 1, 1, que invertidos dan 1101. Escribe en cualquier campo de este conversor y las otras tres bases se actualizan al instante.
El hexadecimal usa 0–9 y A–F para los valores 0–15, y cada dígito equivale exactamente a cuatro bits. Un byte (8 bits) son, por tanto, dos dígitos hex: 255 = FF = 11111111. Por eso los colores (#FF8800), las direcciones de memoria, los hashes y las direcciones MAC se escriben en hex: es mucho más corto que el binario y se traduce fácilmente a bits. Cada dígito octal equivale a tres bits, y su uso más conocido son los permisos de Unix: chmod 755 da al propietario rwx (7 = 111) y al grupo y al resto r-x (5 = 101).
Los números normales de JavaScript no pueden representar todos los enteros por encima de 2⁵³ − 1 (9.007.199.254.740.991), por lo que muchos conversores corrompen sin avisar cadenas hex largas o IDs de 64 bits. Esta herramienta usa BigInt, que mantiene exactos los enteros de cualquier longitud, ideal para IDs de bases de datos, direcciones de blockchain o máscaras de bits.
Cada campo solo acepta dígitos válidos: binario 0–1, octal 0–7, decimal 0–9 y hexadecimal 0–9 y A–F, en mayúsculas o minúsculas. Los prefijos del código, 0b para binario, 0o para octal y 0x para hex, son solo marcas: quítalos antes de pegar.