1 votos

Conversión de base $10$ a la base $2$

Intento resolver las dos preguntas siguientes. La primera pregunta creo que la he hecho correctamente y quiero confirmar esta respuesta. De la segunda pregunta no estoy seguro.

$1)$ Convertir $5.1$ en base $10$ a la base $2$

Mi solución.

Mirando el número entero a la izquierda del decimal $5$

$$(5)_{10} = 2^2+1 = 2^2 + 2^0 = 1\cdot2^2 + 0\cdot 2^1 + 1 \cdot2^0 = (101)_2$$

Mirando la parte decimal:

¿Cómo se calcula?

Mi otra pregunta es si esta respuesta puede almacenarse exactamente en un ordenador.

4voto

dmay Puntos 415

Tenga en cuenta que $0.1=\frac1{10}=\frac12\times\frac15$ . Ahora, \begin{align}\frac15&=\frac3{15}\\&=\frac3{2^4-1}\\&=\frac{3\times2^{-4}}{1-2^{-4}}\\&=3\times2^{-4}\times(1+2^{-4}+2^{-8}+2^{-12}+\cdots)\\&=3\times(2^{-4}+2^{-8}+2^{-12}+2^{-16}+\cdots). \end{align} Por lo tanto, puesto que $3_{10}=11_2$ la representación binaria de $\frac15$ es $$0.001100110011\ldots$$ y, por tanto, la representación binaria de $\frac1{10}$ es $$0.0001100110011\ldots$$ Por último, la representación binaria de $5.1$ es $$101.0001100110011\ldots$$ No se puede almacenar exactamente en un ordenador binario, ya que tiene infinitos dígitos.

1voto

gammatester Puntos 7985

Numéricamente se puede convertir $0.1$ multiplicando repetidamente la parte fraccionaria por $2$

0.1 * 2 = 0.2    ->  1. binary digit = 0
0.2 * 2 = 0.4    ->  2. binary digit = 0
0.4 * 2 = 0.8    ->  3. binary digit = 0
0.8 * 2 = 1.6    ->  4. binary digit = 1
0.6 * 2 = 1.2    ->  5. binary digit = 1
0.2 * 2 = 0.4    ->  6. binary digit = 0
....

Ahora es periódico y se obtiene $$0.1_{10} = 0.0001100110011001100110011001100110011001100110011\cdots_{2}\\ = 0.0\overline{0011}_{2}$$

Al ser periódica no puede almacenarse exactamente como coma flotante binaria.

0voto

G Tony Jacobs Puntos 5904

Yo lo haría así:

$0.1=\frac1{10}=\frac12\cdot\frac15$

Ahora $1/5$ en base $2$ es el resultado de la división $1_2 \div 101_2$ para que puedas establecer una división larga y dividir $101_2$ en $1.000\ldots_2$ . Será periódica, con un período no superior a $4$ .

Por último, multiplicando por $\frac12$ es simplemente un desplazamiento de dígitos (o debería decir, un desplazamiento de bits).

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X