Pregunta

sé 75 (base 8) = 61 (base 10), pero no puedo encontrar fácilmente la fórmula para esto. ¿Cómo se puede convertir de base 8 a la base 10?

¿Fue útil?

Solución

Para convertir cualquier base a la base 10 acaba de hacer lo siguiente:

Para cada dígito en la base diferente que se multiplican por la base y dígitos. Por ejemplo:

75 (base 8) = 7*8^1 + 5*8^0 = 61 

Obras para cualquier base ... binario, hexadecimal, lo que sea justo hacer eso y va a convertir a la base 10.

Otros consejos

0 * 8 5 + 0 * 8 4 + 0 * 8 3 + 0 * 8 2 + 7 * 8 1 + 5 * 8 0 = 61

La fórmula es 1 8 = 1 10 y 10 8 = 8 10 . Todo lo demás se puede derivar de ello.

Si usted tiene una secuencia de la base de 8 dígitos que desea convertir en un número de base 10, procesarlos de izquierda a derecha, manteniendo un total de inicializar a cero. Para cada dígito x, establecer el total a 8 * Total + x. Después de procesar el último dígito, el total será el valor base diez de la secuencia de bases 8.

75 en la base 8 = 5 * 8 ^ 0 + 7 * 8 ^ 1 = 5 + 56 = 61

En general, para convertir el número a_1a_2a_3 ... a_n de la base de k a la base 10, utilizar la fórmula:

a_n * k ^ 0 + a_ (n-1) * k ^ 1 + ... + a_1 * k ^ (n-1).

dado que este es un sitio de la programación:

int oct_to_dec = 075;
printf("%d",oct_to_dec);

137 461 (base8) = 1 x 8 ^ 0 + 6 x 8 ^ 1 + 4 x 8 ^ 2 + 7 x 8 ^ 3 + 3 x 8 ^ 4 + 1 x 8 ^ 5

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top