two second number twos-complement

twos complement - second - ¿Cómo representar un número negativo con una fracción en el complemento de 2?



second complement binary (3)

Con los sistemas de números decimales, cada posición de número (o columna) representa (leer un número de derecha a izquierda): unidades (que es 10 ^ 0), decenas (es decir, 10 ^ 1), cientos (es decir, 10 ^ 2), etc.

Con números binarios sin signo, la base es 2, por lo que cada posición se convierte (nuevamente, leyendo de derecha a izquierda): 1 (es decir, 2 ^ 0), 2 (es decir, 2 ^ 1), 4 (es decir, 2 ^ 2), etc.

Por ejemplo

2^2 (4), 2^1 (2), 2^0 (1).

En el complemento de dos con signo, el bit más significativo (MSB) se vuelve negativo. Por lo tanto, representa el signo de número: ''1'' para un número negativo y ''0'' para un número positivo.

Para un número de tres bits, las filas tendrían estos valores:

-4, 2, 1 0 0 1 => 1 1 0 0 => -4 1 0 1 => -4 + 1 = -3

El valor de los bits retenidos por un sistema de punto fijo (fraccional) no se modifica. Los valores de las columnas siguen el mismo patrón que antes, base (2) a una potencia, pero con una potencia negativa:

2^2 (4), 2^1 (2), 2^0 (1) . 2^-1 (0.5), 2^-2 (0.25), 2^-3 (0.125)

-1 siempre será 111.000
-0.5 agregue 0.5 a ella: 111.100

En su caso, 110100.10 es igual a -32 + 16 + 4 + 0.5 = -11.5. Lo que hiciste fue crear -12 y luego sumar 0.5 en lugar de restar 0.5.

Lo que realmente quieres es -32 + 16 + 2 + 1 + 0.5 = 110011.1 = 110011.1

Así que quiero representar el número -12.5 . Entonces 12.5 es igual a:

001100.100

Si no calculo la fracción entonces es simple, -12 es:

110100

Pero, ¿qué es -12.5? ¿Es 110100.100 ? ¿Cómo puedo calcular esta fracción negativa?


Entonces, U quiere representar -12.5 en la representación del complemento a 2

12.5: - >> 01100.1

Complemento de 2 de (01100.1): - >> 10011.1

verifique el ans al verificar la propiedad del código ponderado de la representación del complemento de 2 (el peso de MSB es -ve). obtendremos -16 + 3 + .5 = -12.5


puede duplicar el número una y otra vez hasta que sea un número entero negativo o alcance un límite definido y luego establezca el punto decimal correspondiente.

-25 es 11100111, entonces -12.5 es 1110011.1