Conceptos básicos
Ejemplo: Si un valor negativo es --19 en decimal, el complemento a dos del
valor absoluto de 19(0013 hex.) es FFFF hex. menos 0013 hex. más 0001 hex.,
que da un resultado de FFED hex.
Número válido
--)
+)
Complemento a dos
Complementos
Generalmente, el complemento de base x hace referencia a un número
producido cuando se restan todos los dígitos de un número concreto de x -- 1 y
luego se suma 1 al dígito de la derecha. (Ejemplo: El complemento a diez de
7556 es 9999 -- 7556 + 1 = 2444). Se utiliza un complemento para expresar una
resta y otro tipo de funciones, como una suma.
Ejemplo:Con 8954 -- 7556 = 1398, 8954 + (el complemento a diez de 7556) =
8954 + 2444 = 11398. Si ignoramos el bit de la izquierda, obtenemos un
resultado de 1398.
Complementos a dos
Un complemento a dos es un complemento de base dos. Aquí, restamos todos
los dígitos desde 1 (2 -- 1 = 1) y sumamos uno.
Ejemplo: El complemento a 2 del número binario 1101 es 1111 (F hex.) -- 1101
(D hex.) 1 (1 hex.) = 0011 (3 hex.). A continuación, se muestra el valor
expresado en hexadecimal de 4 dígitos.
El complemento a dos b hex. de a hex. es FFFF hex. -- a hex. + 0001 hex. =
b hex. Para determinar el complemento a dos b hex. de "a hex.", utilice b hex. =
10000 hex. -- a hex.
Ejemplo: Para determinar el complemento a dos de 3039 hex., utilice 10000
hex. -- 3039 hex. = CFC7 hex.
De igual forma, utilice a hex. = 10000 hex. -- b hex. para calcular el valor a hex.
desde el complemento a dos b hex.
Ejemplo: Para calcular el valor real desde el complemento a dos CFC7 hex.,
utilice 10000 hex. -- CFC7 hex. = 3039 hex.
La serie CS1 tiene dos instrucciones: NEG(160) (2'S
NEGL(161) (DOUBLE 2'S COMPLEMENT), que pueden utilizarse para
determinar el complemento a dos desde el número válido o para determinar el
número válido desde el complemento a dos.
F
F
F
1111
1111
1111
0
0
1
0000
0000
0001
F
F
E
1111
1111
1110
0
0
0
0000
0000
0000
F
F
E
1111
1111
1110
COMPLEMENT)
Sección
9-1
F
1111
3
0011
C
1100
1
0001
D
1101
y
353