El número binario 11 representa?

5

Estaba revisando algunas de las preguntas de mi libro de texto y me quedé atascado aquí. Por favor ayúdame con esto

El número binario 11 representa __

   1) -3 in sign magnitude and -1 in 2's complement
   2) 7 in sign magnitude and -1 in 2's complement
   3) -3 in sign magnitude and -3 in 2's complement
   4) 7 in sign magnitude and -3 in 2's complement

La respuesta fue 'c'. Pero no puedo entender la razón y ni siquiera puedo confiar en él porque no puedo juzgar la respuesta. Por favor ayúdame con esto. Gracias

    
pregunta niko

3 respuestas

2

Antes de que pueda responder a esta pregunta, debe comprender las diversas codificaciones binarias de las que se habla. Los dos en cuestión son 2s complement y sign-magnitude

  1. Signo-Magnitud

    Los números positivos y cero se representan como probablemente esperaría. Digamos que tenemos 4 bits binarios. 0000 es cero, 0001 es uno, 0010 es dos, etc. Cada posición de dígito vale el número base multiplicado por el de la derecha. El más correcto vale uno. Por lo tanto, en binario, las posiciones de dígitos de derecha a izquierda valen 1, 2, 4 y 8. Para decodificar un número, multiplica cada dígito por el valor de su posición de bit y suma los resultados. Por ejemplo, 1010 sería 1x8 + 0x4 + 1x2 + 0x1 = diez. Así es exactamente cómo se escriben los números en otras bases, incluido el decimal. El número decimal 1234 tiene el valor 1x1000 + 2x100 + 3x10 + 4x1.

    El problema es cómo representar números negativos. Al escribir en decimal, ponemos un signo negativo delante del número. Eso es más o menos lo que hace la representación binaria de magnitud de signo. Por lo general, el bit alto se reserva como bit de "signo", con 0 que indica cero o positivo y 1 que indica negativo. El resto de los bits tienen el mismo significado que antes.

    Por ejemplo, usando 4 números de bit nuevamente, 0101 es cinco (1x4 + 0x2 + 1x1). Para hacer el negativo 5, simplemente establecemos el bit de signo que da como resultado 1101. Por lo tanto, en el formato de magnitud de signo de 4 bits, el número binario 1101 tiene el valor menos cinco.

  2. Complemento 2s

    Lo anterior funciona bien y se parece mucho a lo que hacemos nosotros mismos con decimal, pero no es tan conveniente implementarlo con puertas lógicas en una computadora. Hoy en día, el complemento 2s es prácticamente universal dentro de las computadoras. Los números cero y positivos se representan como antes. La diferencia es cómo se representan los números negativos.

    Una ventaja del complemento 2s es que no se necesita hacer nada especial para agregar números negativos en lugar de positivos. Piense en qué patrón de bits resultaría en 0000 después de agregarle 1. Si se sigue la regla de adición, cualquiera que sea ese número debe ser -1. Esperemos que sepa cómo agregar números binarios, y puede ver que 1111 + 0001 da como resultado 0000. En realidad, resulta en 10000, pero como solo tratamos con números de 4 bits, el quinto bit que resulta del agregado se pierde y estamos Quedan con los 4 bits bajos 0000. Solo hay 16 valores posibles que puede representar un número binario de 4 bits, y si usan el esquema de complemento 2s son:

    Binary  Decimal
      0111        7
      0110        6
      0101        5
      0100        4
      0011        3
      0010        2
      0001        1
      0000        0
      1111       -1
      1110       -2
      1101       -3
      1100       -4
      1011       -5
      1010       -6
      1001       -7
      1000       -8
    

Entonces, tal vez puedas ver que la pregunta que hiciste es ambigua. Es importante conocer el ancho del número binario que se está utilizando. Por ejemplo, si la pregunta está asumiendo números de 4 bits como en mi ejemplo anterior, entonces 11 (se supone que 0011 con los ceros iniciales no se muestran) es tres. Lo mismo es cierto para un ancho de bit de 3 o más. Si solo son 2 bits, entonces solo hay 4 valores posibles que dicho número puede expresar.

Esta es tu tarea, así que no solo voy a darte la respuesta. Una buena manera de proceder sería hacer una tabla de todos los posibles números binarios de 2 bits y sus equivalentes decimales como lo hice anteriormente, pero para el complemento de 2s y la magnitud de signo. Si muestra al menos un intento razonable, podemos seguir discutiéndolo.

    
respondido por el Olin Lathrop
2

Un número con signo de dos bits no puede representar -3 en el complemento de dos o en magnitud de signo.

bits     two's complement value    sign-magnitude value
00        0                         0
01        1                         1
10       -2                         0
11       -1                        -1

El complemento de Two tiene un valor negativo adicional (que no tiene inverso aditivo). La magnitud del signo tiene dos ceros.

Ahora veamos tu pregunta.

Ningún patrón de bits distinto de cero puede tener un valor negativo en una representación y un valor positivo en la otra. En ambas representaciones, el bit alto funciona como un signo negativo. Por lo tanto, las respuestas 2 y 4 no pueden ser respuestas correctas para cualquier patrón de bits.

Además, ningún patrón de bits puede tener el mismo valor negativo en ambas representaciones. Un patrón de bits no puede ser -3 en el complemento de dos y -3 en el complemento de uno. Así que la respuesta 3 también es imposible. (Prueba: el complemento de dos -3, en cualquier ancho, termina en 01: 101, 1101, 11101, ... pero una magnitud de signo -3 debe terminar en 11: 111, 1011, 10011, ...) >

La única respuesta correcta posible para algunos patrón de bits es 1:

1) -3 in sign magnitude and -1 in 2's complement

Sin embargo, no es la respuesta correcta para el patrón de bits dado 11 . La situación descrita en 1 es posible y se ajusta al patrón de bits 1111 en una aritmética de cuatro bits. Este número es -3 en la magnitud de signo de cuatro bits, y -1 en el complemento de cuatro bits de dos.

La pregunta debe tener un error tipográfico, o la has copiado mal.

Si una guía de soluciones que está analizando da a C como la solución para una pregunta de opción múltiple cuyas respuestas están denotadas numéricamente, probablemente esté mirando la guía de soluciones incorrecta. Sección incorrecta, capítulo incorrecto, libro de texto incorrecto. Esto parece un error improbable. M

    
respondido por el Kaz
0

La magnitud del signo utiliza el bit más significativo para denotar el signo. 0 es generalmente positivo, 1 negativo. Con un número de 2 bits como 0b11, el bit de signo lo hace negativo con solo 2 valores posibles para la magnitud: 0 y 1. En este caso, sería -1.

Pero esto no es una opción. Realmente creo que querían preguntar El número binario 0b111 representa _ . Esto tendría más sentido, ya que 0b111 sería negativo, con una magnitud de 3 para la forma de la magnitud del signo. O -3, que es una de las opciones.

El complemento de Two es un poco más complicado, pero no mucho. El complemento de Two usa el bit de orden más alto para denotar negatividad también. La magnitud de un número negativo se encuentra complementando el número (0b111 se convierte en 0b000, 0b101 se convertiría en 0b010) y sumando 1. Esto suena tonto, pero hace que la adición de números con signo sea muy simple, no se requiere lógica adicional. La magnitud de un número positivo (con el bit 0 más significativo) es simplemente el número.

Entonces el número es (supongo) 0b111, por lo que es negativo. Complételo y agregue uno produce 0b000, luego 0b001, por lo que es negativo y su magnitud es 1, por lo que es -1.

Entonces ... a menos que esté completamente equivocado, y podría estar considerando que no he hecho esto a mano durante un tiempo, la respuesta es (1), no (3) (o C?) como sugirió. Pero como la pregunta que escribiste estaba obviamente mal, todo podría estar equivocado.

Solo tengo que preguntar qué libro de texto es este.

    
respondido por el UziMonkey

Lea otras preguntas en las etiquetas