De bits a decimal ?

#1
Hola, estoy haciendo un trabajo practico y necesito saber como convertir el bit y decimal.
Se que 1 bit son 2 estados 0 y 1, si son 2 bits ya seria 4 estados, 00, 01, 10, 11.
El ejercicio me dio un ejemplo de que: 4 bits = 15 decimal, mi duda es como llego al 15 decimal.
Tengo demasiados para hacer y si me ayudan con convertir de 10 bits a decimal, ya seria de gran ayuda.
Desde ya muchas gracias.
PD: nose si el tema esta bien en esta categoria, soy nuevo en este foro jaja.
 
#2
Si publicas en el foro, sabrás buscar en Internet, donde viene perfectamente explicado:
1111= 2e3 + 2e2 + 2e1 + 2e0 =15
(Léase "2e3" como "2 elevado a 3").
Si en vez de "1" tienes un "0", sumas 0. La potencia se incrementa en 1 por cada bit adicional, siempre de derecha a izquierda, empezando por la potencia 0 (valor 1).
 
#3
Para pasar de un sistema de numeración a otro hay que entender un concepto, llamado "peso" de un número. El peso de un número es la base del sistema elevada a la posición que ocupa dicho número, y luego habrá que multiplicarlo por el propio número:

En decimal si tenemos 532.

532 (base 10) = 2 x 10 e0 + 3 x 10 e1 + 5 x 10 e2 = 2 x 1 + 3 x 10 + 5 x 100 = 2 + 30 + 500 -> 532

eX = Elevado a X, donde X es la posición.

A tener en cuenta o recordar, cualquier número elevado a 0 es 1.

Es lo mismo en binario. Si tenemos por ejemplo 11101 en base 2 o binario.

11101 (base 2) = 1 x 2 e0 + 0 x 2 e1, + 1 x 2 e2 + 1 x 2 e3 + 1 x 2 e4 = 1 + 0 + 4 + 8 + 16 = 29 decimal

Esto del peso es más fácil de entender, de la siguiente forma. Desde el llamado bit menos significativo hasta el más significativo, se multiplica x2 la siguiente posición. Se cuenta siempre de derecha a izquierda en el caso de números enteros y de izquierda a derecha en números decimales. Siempre teniendo la posición 0, como referencia.

1 -> 1 x 2 = 2 -> 2 x 2 = 4 -> 4 x 2 = 8 -> 8 x 2 = 16 -> 16 x 2 = 32...

Entonces tenemos que la primera posición siempre vale 1, porque 2 e0 es 1

El peso, en binario, entonces es siempre el doble, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024...

Esto vale para cualquier sistema. En decimal sería, 1, 10, 100, 1 000, 10 000... (1 -> 1 x 10 = 10 -> 10 x 10 = 100 -> 100 x 10 =1 000 -> 1 000 x 10 = 10 000...)

De la misma forma se hace para la parte con decimales, simplemente que es más complejo porque da números enormes, pero por ejemplo:

11101,101. olvídándonos de la parte entera que ya la sabemos.

101 (base 2) = 1 x 2 e-1 + 0 x 2 e-2 + 1 x 2 e-3 = 1 x 2 e(1/2) + 0 x 2 e(1/4) + 1 x 2 e( 1/8 ) = 1/2 + 0 + 1/8 = 0,5 + 0 + 0,125 = 0,625 decimal

Sabiendo que 11101 era 29

11101,101 (base 2) = 29,625 decimal.

e-X = elevado a menos X. Donde X es la posición que ocupa. Y recordando que un número elevado a menos algo en realidad es 1/X (uno partido de X)

1/2 = 0,5
1/4 = 0,25
1/8 = 0,125

Salu2
 
Última edición:
Arriba