Convertidor de Decimal a Octal

Decimal

Octal es el sistema de numeración base-8 que más a menudo encuentras en los permisos de archivos de Unix (chmod 755) y en lenguajes de programación más antiguos. Este convertidor transforma cualquier número entero decimal en su forma octal. La guía de abajo explica el método de división por 8 para que puedas comprobar el resultado a mano.

Cómo convertir decimal a octal

  1. 1

    Ingresa un entero decimal

    Escribe cualquier número entero, por ejemplo 255 o 4096.

  2. 2

    Lee el resultado octal

    Los dígitos octales aparecen al instante, en forma simple y sin prefijo, listos para copiar.

  3. 3

    Aprende el método

    La guía de abajo explica el proceso de división por 8 y la pila de restos que se convierte en los dígitos octales, para que puedas comprobar el resultado a mano.

  4. 4

    La regla de los negativos

    Los números negativos se convierten mediante su complemento a dos de 64 bits, la misma salida que produce el formato `%o` de C.

Cómo la división por 8 construye los dígitos octales

Para convertir decimal a octal, sigue dividiendo por 8 y recoge los restos de abajo hacia arriba:

83 / 8 = 10 resto 3
10 / 8 = 1  resto 2
 1 / 8 = 0  resto 1
Lee de abajo hacia arriba: 123

Así que 83 decimal es igual a 123 octal. Cada dígito octal cubre tres bits, por eso el octal aparece en la notación de permisos de Unix donde tres bits codifican lectura, escritura y ejecución para cada clase de usuario.

Valores clave

Decimal Octal Contexto
7 7 Mayor dígito octal único
8 10 Primer valor octal de dos dígitos
64 100 Primer valor octal de tres dígitos
511 777 Valor máximo de 9 bits, permisos completos de Unix
4.096 10000 Primer valor octal de cinco dígitos

Hoja de trucos de permisos de Unix

Los números chmod familiares son octales: cada dígito es una máscara de tres bits para propietario, grupo y todos los demás.

  • 4 equivale a lectura
  • 2 equivale a escritura
  • 1 equivale a ejecución

Así que 755 significa que el propietario tiene 7 (rwx), el grupo y el mundo tienen 5 (r-x). 644 significa que el propietario rw-, todos los demás r--.

Precaución: el cero inicial

En C, un cero inicial significa octal: int x = 010; asigna 8, no 10. JavaScript desaconsejó esa convención porque confundía a todo el mundo. Python la eliminó en la versión 3.0. Si tu base de código es moderna, usa mejor el prefijo 0o para evitar errores silenciosos de un factor de ocho.

Preguntas frecuentes

Porque la base-8 tiene exactamente ocho dígitos válidos por posición. El dígito 8 no puede existir en octal tanto como el 10 no puede existir en decimal; si un resto alcanza 8 se convierte en 10 en la siguiente columna.

Rara vez. Algunos sistemas embebidos y formatos de archivo heredados aún dependen del octal, pero para la mayoría del trabajo moderno el hexadecimal lo ha reemplazado porque un dígito hexadecimal se mapea limpiamente a cuatro bits (la mitad de un byte) en lugar de tres.

No. Este convertidor solo trabaja con números enteros. Si escribes un valor con punto decimal, solo se convierte la parte entera: 12.9 da el mismo resultado que 12. La coma decimal no se reconoce.

La conversión se calcula en el servidor, así que el número que escribes se envía como parte de la interacción con la página y puede viajar en el enlace al avanzar entre los pasos de la herramienta. No se guarda ni se comparte con terceros.

Herramientas relacionadas

Herramienta disponible en otros idiomas