Pregunta

Número mínimo de bits requeridos para representar $ (+ 32) _ {base10} $ y $ (- 32) _ {base10} $ en el formulario de cumplido firmado de dos?

Mi intento:

32= 0100000 (1er cero - bit de signos como positivo)

para representar +32 necesitamos 7 bits

-32= 1100000 (1er bit 1 - Signo de signos como negativo)

para representar a -32 necesitamos 7 bits

Pero la respuesta se da como 6 bits para almacenar -32 y 7 bits para almacenar +32 (CASO POSITIVO, entendí, negativo en mi opinión, debería ser de 7 bits). Su razón, uno de 1 bit, suficiente para representar un número negativo. Estoy confundido. Por favor, aclare aquí

También tengo preguntas siguientes: -

¿Podemos decir que el número de bits necesarios para representar un número negativo es estrictamente menor que (o menos de igual a) número requerido para representar ese número positivo correspondiente?

¿Cómo podemos generalizar el número mínimo de bits necesarios para representar un número positivo y negativo dado, DIGA + N y -N en la representación de magnitud firmada, firmó la notación de complemento de 1 y firmó la notación de los dos de los dos.

¿Fue útil?

Solución

Las representaciones de los números como los binarios de complemento de Dos de 6 bits son \ comienzan {align} + 32_ {10} &= 10 _ 0000_2 \\ -32_ {10} &=Overline {10 \, 0000} _2 + 1_2 \\ &= 01 \, 1111_2 + 1_2 \\ &= 10 \, 0000_2 \ End {align} Lo que daría la misma representación para ambos números. Eso significa que no puede usar números de 6 bits para representar ambos valores usando el complemento de dos.

para binarios de 7 bits que funciona, sin embargo: \ comienzan {align} + 32_ {10} &= 010 \, 0000_2 \\ -32_ {10} &=Overline {010 \, 0000} _2 + 1_2 \\ &= 101 \, 1111_2 + 1_2 \\ &= 110 \, 0000_2 \ End {align} Como puede ver, el bit más significativo representa el signo del número.


Otra perspectiva sobre su pregunta: ¿Cuál es el número negativo positivo / más pequeño que puede almacenar en un $ n $ -bit two complemento binario? Luego, la respuesta es $ 2 ^ {(n-1)} - 1 $ para el más grande positivo y $ - 2 ^ { (N-1)} $ para el número negativo más pequeño.

Eso significa que un binario de 6 bits puede contener valores $ - 32, \ ldots, 31 $ y un valores binarios de 7 bits $ - 64, \ LDOTS, 63 $ . El número $ - 32 $ luego encaja en el rango de binarios de 6 bits, mientras que $ + 32 $ no lo hace Necesitarías un poco más para este último.

Otros consejos

There are 65 values x with -32 <= x <= +32. You cannot represent 65 values in 6 bits. Either you misread the question, or the answer 6 is wrong.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a cs.stackexchange
scroll top