resta de números en complemento a 2 con signo

resta de números en complemento a 2 con signo

Considere que usamos un número en complemento a dos de 3 bits y vamos a realizar una operación de resta. el minuendo es +3 y el sustraendo es -4. debemos obtener el complemento a 2 del sustraendo y sumarlo al minuendo. +3=011 -4=100--->el complemento a dos es nuevamente 100, ahora los sumamos y obtenemos 111, lo cual es incorrecto. porque deberíamos obtener 3-(-4)=+7 ¡pero el resultado es negativo! ¿Cómo analizas el desbordamiento? ¿Por qué el resultado es incorrecto?

Respuesta1

Si está utilizando el bit más a la izquierda para indicar el signo, entonces no podrá utilizar el número completo de 3 bits. 100es (positivo, sin signo) 4 o de hecho es (negativo) 0.

Para que su número sea "-4", entonces debe serlo 1100y no solo 100. Luego trabajas con la información que tienes, sabiendo que tienes un número de 3 bits y que uno de esos números es negativo.

Lo que quiero decir es el valor que estás obteniendo.es7. 111es, para números sin signo de 3 bits, exactamente 7.

Simplemente no está teniendo en cuenta el hecho de que el primer dígito no es su dígito de signo si está utilizando la función de complemento de 3 bits. Primero debe mirar su número y descartar la información que no sea relevante para la operación inmediata, es decir, el dígito del signo. El signo te dice lo que debes hacer con él, pero no es una parte "real" del valor de ese número.

Si está utilizando un número de 3 bits con signo, entonces, por definición, solo podrá realizar sumas y restas de 2 bits.

información relacionada