En la entrada anterior hablamos de sistemas numéricos, representación de números, y sistemas posicionales.
Así, apareció el concepto de base, que es el conjunto de símbolos que vamos a emplear para representar los números (más concretamente, normalmente no nos referiremos a la cantidad de símbolos disponibles).
Así vimos un sistema numérico inventado que tenía esta base 🔵,🔺, 🟩,⭐. Ahora toca un poquito de matemáticas para “aposentar” los conceptos.
Durante esta entrada voy a usar base decimal como sistema “normal”. Básicamente porque si hablamos en estrellitas y cuadraditos, iba a costar entenderse. Pero recordad que todo sería igualmente válido con cualquier otro sistema.
¡Contenido matemático ahead! Si no te apetece leer matemáticas en este momento, vete por otra entrada y vuelve dentro de un rato.
Cuanto vale mi número en baseN
Volviendo a nuestro ejemplo de base 🔵,🔺, 🟩,⭐ (1, 2, 3, 4) ¿Qué equiparación con la base decimal tiene un número?
En este caso, tenemos una baseN = 4
Ejemplos
Es decir, si tenemos el número 🔺🟩 (1, 2)
Es decir, que el número que tengo es
4 + 2 = 6
Si el número fuera 🟩🟩 (2, 2), tendría
As que el número que tengo es
(2 * 4) + 2 = 10
Y si sigo haciendo click hasta que tenga 3 dígitos 🔺🟩🟩 (1, 2, 2)
(1 * 4²) + (2 * 4) + 2 = 10
Conversión de BaseN a decimal
Entonces ¿Cómo convertimos de BaseN a decimal? Es lo que hemos hecho más arriba, pero generalizado a una base cualquiera.
Dᵢel dígito en la posición iBase, el número de símbolos en tu base
Por ejemplo, para convertir el número 2.310 en base 4 a decimal.
base₁₀ = 2 * 4³ + 3 * 4² + 1 * 4¹ + 0 * 4⁰
= 128 + 48 + 4 + 0
= 180
Esta ecuación también es equivalente a esta sucesión
Conversión de decimal a BaseN
Ahora vamos a ver el proceso inverso pasar un número decimal a un BaseN. En este caso lo más sencillo es que vayamos a ir dividiendo y calculando residuos.
Veamos con un ejemplo, convertir 180 a base 4.
base₄ => 180 / 4 = 45, residuo 0
45 / 4 = 11, residuo 1
11 / 4 = 2, residuo 3
2 / 4 = 0 residuo 2
Y tu número decimal 180 convertido a base 4, son los residuos ordenados, 2310.
Comparación con decimal
¿Te parece raro todo eso? Si te ha resultado complicado de visualizar, piensa un momento en el sistema decimal.
Imaginemos el número 1.537. Lo que hemos dicho es que, podemos pensar en 1.527 como una suma de potencias de 10.
1.537 = 1.000 + 500 + 30 + 7
//que es lo mismo que decir
1.537 = (1 * 10³) + (5 * 10²) + (3 * 10) + (7)
¡Haces esas operaciones continuamente! Simplemente es que el sistema decimal lo tienes muy interiorizado.
También hemos dicho que, en lugar de pensarlo como una suma de potencias, puedes pensarlo como una sucesión. En cada paso multiplicas el anterior por 10, y le sumas un numero.
1.537 = 153 * 10 + 7
= (15 * 10 + 3) * 10 + 7
= (1 * 10 + 5) * 10 + 3) * 10 + 7
Finalmente, también puedes hacer la sucesión al revés, y quedarte con los restos
base10 => 1.537 / 10 = 153, residuo 7
153 / 10 = 15, residuo 3
15 / 10 = 1, residuo 5
1 / 10 = 0 residuo 1
Son las mismas operaciones que has hecho para el cambio de base, solo que en lugar de ‘10’ has puesto BaseN.
