binary - siguientes - ¿Ventaja del complemento de 2 sobre el complemento de 1?
explicacion de complemento a 2 (6)
¿Cuál es la ventaja del complemento de 2 sobre el complemento de 1 en la representación de números negativos en el sistema de números binarios? ¿Cómo afecta el rango de valores almacenados en una cierta representación de número de bits en un sistema binario?
Ventajas del Complemento # 1 de Two
En la representación de Complemento de Two, el valor cero se representa de forma única al tener todos los bits establecidos en cero:
**
Ventajas del Complemento # 2 de Two
** Cuando realiza una operación aritmética (por ejemplo, suma, resta, multiplicación, división) en dos enteros con signo en la representación del Complemento de Dos, puede usar exactamente el mismo método que si tuviera dos enteros sin signo (es decir, enteros no negativos con sin signo de bit) ... EXCEPTO, tiras el alto acarreo (o el alto préstamo para la resta)
Ventajas del Complemento # 3 de Two
Esta propiedad de la representación de Complemento de Dos es tan
increíblemente útil que prácticamente todos los generales
La computadora de propósito disponible en la actualidad utiliza Complemento de Dos. ¿Por qué? Porque, con el Complemento de Dos, no necesitamos algoritmos especiales (y, por lo tanto, circuitos extra) para operaciones aritméticas que involucren valores negativos.
El complemento 2s no es para representar un número negativo, es un inverso.
Significa que puedes hacer A + B ''(donde B'' es el complemento 2 de B) para dar A - B, significa que puedes hacer todo con un sumador y no necesitas un sustrato
La ventaja principal del complemento de dos sobre el complemento de uno es que el complemento de dos solo tiene un valor de cero. El complemento de uno tiene un cero "positivo" y un cero "negativo".
A continuación, para agregar números usando el complemento de uno, primero debe hacer una suma binaria y luego agregar un valor de acarreo final.
El complemento de dos tiene un solo valor para cero y no requiere valores de acarreo.
También preguntó cómo se ve afectado el rango de valores almacenados. Considere un valor entero de ocho bits, los siguientes son sus valores mínimos y máximos:
Notation Min Max
========== ==== ====
Unsigned: 0 255
One''s Comp: -127 +127
Two''s Comp: -128 +127
Referencias:
Las principales ventajas son:
En 1 hay un
-0
(11111111
) y un+0
(00000000
), es decir, dos valores para el mismo0
. Por otro lado, en el complemento a 2, solo hay un valor para0
(00000000
). Esto es porque+0 --> 00000000
y
-0 --> 00000000 --> 11111111 + 1 --> 00000000
Al realizar operaciones aritméticas como la suma o la resta utilizando 1''s, debemos agregar un bit de acarreo adicional, es decir,
1
al resultado para obtener la respuesta correcta, por ejemplo:+1(00000001) + -1(11111110) ----------------- = (11111111)
pero la respuesta correcta es 0
. Para obtener 0
tenemos que agregar un bit de acarreo 1
al resultado ( 11111111 + 1 = 00000000
).
En el complemento a 2, el resultado no tiene que ser modificado:
+1(00000001)
+
-1(11111111)
-----------------
= 1 00000000
Otra ventaja importante del complemento de Two sobre la representación de bits firmada es que la representación de complemento de 2 es fácil de manipular en hardware
Enteros negativos: el complemento de 2 tiene sentido para los enteros negativos. El complemento de 1 es solo una técnica de cálculo que podría ser útil para evaluar el complemento de 2. El rival real (derrotado) del complemento de 2 fue la representación de magnitud de signo para enteros negativos.
Sin desbordamiento: el complemento de 1 no tiene un uso especial para enteros negativos. El complemento de 2 tiene sentido porque se puede usar en aritmética natural de suma y resta sin necesidad de cambiar los bits. Si no se produce un desbordamiento, el bit de signo del resultado es el valor correcto. La promoción del número de bits en esta notación es directa, por ejemplo, para promover un entero con signo de 8 bits a 16, simplemente podríamos repetir el bit de signo del valor entero en el byte superior de la misma.
Magnitud de signo: por el contrario, la notación de magnitud de signo es la forma en que el ser humano utiliza para representar números enteros negativos. La aritmética de la suma y la resta de suma de números de bits es un poco desordenado con esta notación.