Como resto números binarios con resultado negativo?

Como debo expresar el resultado de dos números binarios en negativo. Por ejemplo tengo la siguiente resta: 14-55. En binario seria: 1011 - 1011110111. Si realizo la cuenta me da 1011110111. Como deo realizarlo.

1 Respuesta

Respuesta
1

·

·

¡Hola Federico!

Para expresar números negativos en binario se debe tener establecida una longitud máxima para los números y el primer dígito es 1 en los negativos y se expresan en el llamado modo complemento de 2.

Para la cuenta que quieres hacer bastaría con números de 1 byte (8bits) aunque lo mismo daría que fueran 2 bytes, 4 bytes, etc.

Entonces suponiendo que usaremos un byte:

El numero positivo se escribe normal

14 = 8+4+2 = 00001110

Los negativos empiezan por 1, siendo la representación del número positivo 256 - n

Luego la representación de -55 es la de 256 - 55 = 201

201 = 128 + 64 + 8 + 1 = 11001001

Y ahora como eso ya incorpora el signo negativo de 55 la operación se transforma en una suma

14 - 55 = 00001110 + 11001001 =  11010111

Y ahora si queremos saber el significado en base 10 hacemos lo contrario que antes:

11010111 = 128 + 64 + 16 + 4 + 2 + 1 = 215

su valor absoluto es

256 - 215 = 41

Luego el resultado es -41

Esto es bastante complicado para los humanos pero para el ordenador es lo más normal del mundo.

Saludos.

:

:

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas