lunes, 1 de marzo de 2010

UTILIZACIÓN DEL COMPLEMENTO A1 Y A2 Y LA EXTENSION DE SIGNO

COMPLEMENTO A 1:

Se obtiene al cambiar cada uno de los dígitos de un número binario por su complementario, esto es, cambiar los unos por ceros y los ceros por unos.


Por ejemplo:

11002 ->12 SU COMPLEMENTO A 1, SERIA: 00112
10011012->77 SU COMPLEMENTO A 1, SERIA: 01100102


COMPLEMENTO A 2:

El complemento a 2 de un número binario se obtiene tomando el complemento a 1, y sumándole 1 al bit menos significativo. A continuación se ilustra este proceso para el número 1101 = 13


Existe una manera abreviada y es coger el número binario y se procede a realizar la negación de cada bit dejando siempre el primer 1 (uno), que se encuentre de derecha a izquierda igual.

Ejemplo:

10011012à77; ahora para encontrar su complemento a 2 se aplica lo que se menciono anteriormente y quedaría de la siguiente forma:


EXTENSIÓN DEL SIGNO

La extensión de signo se utiliza porque los sistemas digitales utilizan tamaños fijos de almacenamiento como son 4, 8,16 y 32 bits dichos espacios no pueden quedar vacios.

Valores con números de 8 bits

Valor del complemento a dos

Valor sin signo

00000000

0

0

00000001

1

1

...

...

...

01111110

126

126

01111111

127

127

10000000

−128

128

10000001

−127

129

10000010

−126

130

...

...

...

11111110

−2

254

11111111

−1

255


Representar el signo de un número podría consistir en asignar un bit para representar el signo, poner ese bit (a menudo el bit más significativo) a 0 para un número positivo, y a 1 para un número negativo; los bits restantes en el número indican la magnitud.

En el complemento a dos, los números negativos se representan mediante el patrón de bits que es un bit mayor (sin signo) que el complemento a uno del valor positivo.

En el complemento a dos, hay un solo cero (00000000). Para negar un número (negativo o positivo) invertimos todos los bits y añadimos un 1 al resultado.


Decimal

Entero positivo

Signo y magnitud

Complemento a 1

Complemento a 2

BCD- exceso 7

+8

1000

n/a

n/a

n/a

1111

+7

0111

0111

0111

0111

1110

+6

0110

0110

0110

0110

1101

+5

0101

0101

0101

0101

1100

+4

0100

0100

0100

0100

1011

+3

0011

0011

0011

0011

1010

+2

0010

0010

0010

0010

1001

+1

0001

0001

0001

0001

1000

(+)0

0000

0000

0000

0000

0111

(−)0

n/a

1000

1111

n/a

n/a

−1

n/a

1001

1110

1111

0110

−2

n/a

1010

1101

1110

0101

−3

n/a

1011

1100

1101

0100

−4

n/a

1100

1011

1100

0011

−5

n/a

1101

1010

1011

0010

−6

n/a

1110

1001

1010

0001

−7

n/a

1111

1000

1001

0000

−8

n/a

n/a

n/a

1000

n/a



4 comentarios: