Come posso convertire un numero da base 8 a base 10?
Domanda
Lo so 75 (base8) = 61 (Base10), ma non riesco a trovare facilmente la formula di questa. Come si fa a convertire da base 8 a base 10?
Soluzione
Per convertire qualsiasi base di basare 10 solo effettuare le seguenti operazioni:
Per ogni cifra nella diversa base Moltiplica per la base e cifre. Ad esempio:
75 (base 8) = 7*8^1 + 5*8^0 = 61
Funziona per qualsiasi base ... binario, hex, è il nome solo fare quello e verrà convertito in base 10.
Altri suggerimenti
0 * 8 5 + 0 * 8 4 + 0 * 8 3 + 0 * 8 2 + 7 * 8 1 + 5 * 8 0 = 61
La formula è 1 8 = 1 10 e 10 8 = 8 10 . Tutto il resto può essere derivato da quello.
Se si dispone di una sequenza di base di 8 cifre che si desidera convertire in un numero in base 10, elaborarli da sinistra a destra, mantenendo una totale si inizializza a zero. Per ogni cifra x, impostare il totale di 8 * totale + x. Dopo l'elaborazione dell'ultima cifra, il totale sarà dieci valore base della sequenza di base 8.
75 in base 8 = 5 * 8 ^ 0 + 7 * 8 ^ 1 = 5 + 56 = 61
In generale, per convertire il numero a_1a_2a_3 ... a_n dalla base k in base 10, utilizzare la formula:
a_n * k ^ 0 + a_ (n-1) * k ^ 1 + ... + a_1 * k ^ (n-1).
dato che questo è un sito di programmazione:
int oct_to_dec = 075;
printf("%d",oct_to_dec);
137461 (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