stereo requieren representarse pueden para numeros música minuto cuántos cuantos con bytes almacenar 1khz binary bits

binary - requieren - cuantos numeros pueden representarse con 8 bits



¿Cuántos valores se pueden representar con n bits? (7)

2 9 = 512 valores, porque esa es la cantidad de combinaciones de ceros y unos que puedes tener.

Sin embargo, lo que esos valores representan dependerá del sistema que esté utilizando. Si es un número entero sin signo, tendrá:

000000000 = 0 (min) 000000001 = 1 ... 111111110 = 510 111111111 = 511 (max)

En el complemento a dos , que se usa comúnmente para representar enteros en binario, tendrás:

000000000 = 0 000000001 = 1 ... 011111110 = 254 011111111 = 255 (max) 100000000 = -256 (min) <- yay integer overflow 100000001 = -255 ... 111111110 = -2 111111111 = -1

En general, con k bits puedes representar 2 valores k . Su alcance dependerá del sistema que esté utilizando:

Sin firmar: 0 a 2 k -1
Firmado: -2 k-1 a 2 k-1 -1

Por ejemplo, si n=9 , ¿cuántos valores diferentes se pueden representar en 9 dígitos binarios (bits)?

Mi pensamiento es que si configuro cada uno de esos 9 bits en 1, haré el número más alto posible que esos 9 dígitos puedan representar. Por lo tanto, el valor más alto es 1 1111 1111 que equivale a 511 en decimal. Concluyo que, por lo tanto, 9 dígitos de binario pueden representar 511 valores diferentes.

¿Mi proceso de pensamiento es correcto? Si no, ¿alguien podría explicar amablemente lo que me estoy perdiendo? ¿Cómo puedo generalizarlo a n bits?


De acuerdo, ya que "se filtró": te falta cero, por lo que la respuesta correcta es 512 (511 es el más grande, pero es 0 a 511, no 1 a 511).

Por cierto, un buen ejercicio de seguimiento sería generalizar esto:

How many different values can be represented in n binary digits (bits)?


Hay una manera más fácil de pensar sobre esto. Comience con 1 bit. Esto obviamente puede representar 2 valores (0 o 1). ¿Qué sucede cuando agregamos un poco? Ahora podemos representar el doble de valores: los valores que podríamos representar antes con un 0 anexado y los valores que podríamos representar antes con un 1 anexado.

Entonces, la cantidad de valores que podemos representar con n bits es solo 2 ^ n (2 a la potencia n)


Lo que te estás perdiendo: Zero es un valor


Lo que te falta es qué esquema de codificación se está utilizando. Hay diferentes formas de codificar números binarios. Mire en representaciones de números firmados. Para 9 bits, los rangos y la cantidad de números que se pueden representar diferirán según el sistema utilizado.


Sin querer darte la respuesta aquí está la lógica.

Tienes 2 valores posibles en cada dígito. tienes 9 de ellos.

como en la base 10 donde tienes 10 valores diferentes por dígito, digamos que tienes 2 (lo que hace de 0 a 99): de 0 a 99 hace 100 números. si haces el cálculo tienes una función exponencial

base^numberOfDigits: 10^2 = 100 ; 2^9 = 512


Una mejor manera de resolverlo es comenzar pequeño.

Comencemos con 1 bit. Que puede ser 1 o 0 . Eso es 2 valores, o 10 en binario.

Ahora 2 bits, que pueden ser 00 , 01 , 10 o 11 Eso es 4 valores, o 100 en binario ... Ver el patrón?