2 votos

Cómo convertir de complemento 10s a base 10/decimal

Finalmente entendí cómo convertir de base 10 a 10's complemnt aquí

Pero, ¿cómo vuelvo a convertir? ¿Cómo sé qué signo es? En el complemento de 2s, es el LSB, 1 significa negativo, si no positivo. ¿Para el complemento 10s?

Si

$$-1122_{10} = 9999 - 1122 + 1 = 8878_{10s}$$

$$8878_{10s} = 9999 - 8878 - 1 = -1122_{10}$$

Pero por qué en otro problema,

$$899_{10} – 7212_{10} = 00899_{10s} + 92788_{10s} = 93687_{10s}$$

$$93687_{10s} = 99999 - 93687 - 1 = -6311_{10}$$

La respuesta correcta debería ser $-6313_{10}$ . ¿Probablemente mi método de conversión de complemento 10s a decimal es incorrecto?

Hmm... Sospecho que lo que debería hacer es $100000 - 93687$ ... ¿pero por qué ha funcionado en el primer caso? ¿Cómo puedo determinar el signo? LS "B" 9 significa negativo?

4voto

Peter Taylor Puntos 5221

Pero, ¿cómo vuelvo a convertirme?

De la misma manera. Los complementos son involuciones.

¿Cómo puedo saber de qué signo se trata?

Fíjate en el dígito inicial. 0..4 => positivo; 5..9 => negativo.

2voto

afarnham Puntos 1750

En sus ecuaciones, escribe

$$8878_{10s} = 9999 - 8878 - 1 = -1122_{10}$$

Esto es incorrecto sin el uso de paréntesis adecuados, ya que

$$8878_{10s} = 9999 - 8878 - 1 = 9999 - 8879 = -1120_{10}$$

En cambio, creo que querías escribir

$$8878_{10s} = 9999 - (8878 - 1) = 9999 - 8877 = -1122_{10}$$

Esto demuestra también por qué su solución final es errónea. Si se añaden paréntesis, se obtiene

$$93687_{10s} = 99999 - (93687 - 1) = 99999 - 93686 = -6313_{10}$$

Y, como escribes, sería mucho más fácil escribir $10000 - x$ en lugar de $9999 - (x - 1)$ que en realidad es lo mismo.

1voto

lowglider Puntos 562

Thijs Laarhoven ya ha señalado los errores de signo en tus cálculos. En cuanto a la pregunta original ("¿Cómo puedo saber de qué signo se trata?"), sólo tienes que decidir alguna convención de signos: si el resultado, reducido modulo $10^n$ es inferior a algún umbral $M$ entonces debes interpretarlo como positivo, de lo contrario como negativo.

Una opción natural de umbral es $M = 10^n/2$ lo que equivale a la regla sugerida por Peter Taylor: si el $n$ -el dígito es $5$ o mayor, el número es negativo. Sin embargo, casi cualquier otra opción de $0 < M \le 10^n$ también podría utilizarse. ( $M=10^n$ corresponde a la aritmética sin signo módulo $10^n$ .) En cualquier caso, siempre se producirá un desbordamiento aritmético cuando el resultado sea mayor o igual a $M$ o menos de $M-10^n$ .

Esta es exactamente la misma situación que en base 2; la convención de que los números con el bit más alto fijado se consideran negativos (es decir $M = 2^n/2 = 2^{n-1}$ ) es sólo una posibilidad entre muchas otras. Una ventaja de esta convención particular, y de la convención similar para la base 10 sugerida anteriormente, es que aseguran que la negación invierte consistentemente el signo de casi todos los números distintos de cero; la única excepción en ambos casos es $M \equiv -M$ que es congruente con su propio negativo.

Esta es una consecuencia inevitable de $b$ para la representación del complemento de los pares $b$ Como hay un número par de números posibles, y como uno de ellos debe representar el cero, queda un número impar de números a repartir entre los positivos y los negativos.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X