Utilice el lenguaje C para encontrar el problema de complemento del código original
¿Usar complemento para encontrar el código original?
¿Crees que el complemento del código original tiene una correspondencia uno a uno?
Complemento de ocho bits, que puede representar números con signo del -128 al 127.
Una primitiva de ocho bits que puede representar números con signo del -127 al 127.
De esto sabemos que sólo existe el complemento de -128. Sin código fuente.
En complemento a ocho, del 0 al 127 se almacenan como código sin formato para los números positivos.
El otro 128~255 representa -128~-1.
"Toma el recíproco de 129~255 y suma 1" es el código original de -127~-1.
También está 128, que no tiene código fuente correspondiente.
El procedimiento para convertir el complemento de ocho bits al código original es el siguiente:
unsigned char getbits(unsigned char value)
{ // valor: 0 ~255
if (valor == 128) printf("Este complemento no tiene código original");
else?if (valor > 128) valor = ~valor + 1 + 128;
// Si es un número negativo, toma el recíproco y agrega uno
returnvalue; //vuelve al código original
}