Your SlideShare is downloading. ×
Complemento A Dos
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Complemento A Dos

21,764
views

Published on

Published in: Technology, Business

1 Comment
0 Likes
Statistics
Notes
  • Be the first to like this

No Downloads
Views
Total Views
21,764
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
130
Comments
1
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Complemento a dos Complemento a dos Decimal 7 0111 6 0110 5 0101 4 0100 3 0011 2 0010 1 0001 0 0000 −1 1111 −2 1110 −3 1101 −4 1100 −5 1011 −6 1010 −7 1001 −8 1000 Complemento a dos con enteros de 4 bits El complemento a dos de un número N que, expresado en el sistema binario está compuesto por n dígitos, se define como: . Veamos un ejemplo: tomemos el número N = 45 que, cuando se expresa en binario es N = 1011012, con 6 dígitos, y calculemos su complemento a dos: Cabe señalar que en este ejemplo se ha limitado el número de bits a 6, por lo que no sería posible distinguir entre el -45 y el 19 (el 19 en binario es 10011). En realidad, un número en complemento a dos se expresa con una cantidad arbitraria de unos a la izquierda, de la misma manera que un número binario positivo se expresa con una cantidad arbitraria de ceros. Así, el -45, expresado en complemento a dos usando 8 bits sería 11010011, mientras que el 19 sería 00010011; y expresados en 16 bits serían 1111111111010011 y 0000000000010011 respectivamente. Se presenta la tabla de verdad del complemento a 2 para cuatro dígitos. Cálculo del complemento a dos El cálculo del complemento a dos es muy sencillo y muy fácil de realizar mediante puertas lógicas, donde reside su utilidad.
  • 2. Para comenzar los números positivos se quedarán igual en su representación binaria. Los números negativos deberemos invertir el valor de cada una de sus cífras, es decir realizar el complemento a uno, y sumarle 1 al número obtenido. Podemos observar esto en la tabla de ejemplo. Cabe recordar que debido a la utilización de un bit para representar el signo, el rango de valores será diferente al de una representación binaria habitual; el rango de valores decimales para 'n' bits será: Conversión rápida Una forma de hallar el opuesto de un número binario positivo en complemento a dos es comenzar por la derecha (el dígito menos significativo), copiando el número original (de derecha a izquierda) hasta encontrar el primer 1, luego de haber copiado el 1, se niegan (complementan) los dígitos restantes (es decir, copia un 0 si aparece un 1, o un 1 si aparece un 0). Este método es mucho más rápido para las personas, pues no utiliza el complemento a uno en su conversión.1 Por ejemplo, el complemento a dos de quot;0011 11010quot; es quot;1100 00110quot;. Otra forma es negar todos los dígitos (se halla el complemento a 1) y después sumar un 1 al resultado, viene a ser lo mismo que lo anteriormente explicado. 100001 ---> 011110 -->011111 ¿Para qué sirve? Su utilidad principal se encuentra en las operaciones matemáticas con números binarios. En particular, la resta de números binarios se facilita enormemente utilizando el complemento a dos: la resta de dos números binarios puede obtenerse sumando al minuendo el complemento a dos del sustraendo. Complemento a dos Valores con números de 8 bits Valor del complemento a dos Valor sin signo 0 0 00000000 1 1 00000001
  • 3. ... ... ... 126 126 01111110 127 127 01111111 −128 128 10000000 −127 129 10000001 −126 130 10000010 ... ... ... −2 254 11111110 −1 255 11111111 Complemento a dos Los problemas de las múltiples representaciones del 0 y la necesidad del acarreo de salida, se evitan con un sistema llamado Complemento a dos. 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. La suma de un par de números enteros en complemento a dos es la misma que la suma de un par de números sin signo (excepto para la detección de desbordamiento si se usa). Por ejemplo, la suma en complemento a dos de 127 y –128 da el mismo patrón de bits que la suma sin signo del 127 y 128, tal y como se puede ver en la tabla de abajo. El valor -8, representado en binario con cuatro bits (1000) es un caso especial, ya que su complemento a dos es el mismo, es necesario cinco bits para su representación (01000). Una forma fácil de implementar el complemento a dos es la siguiente: Ejemplo 1 Ejemplo 2 1. Empezando desde la derecha encontramos el primer '1' 0101001 0101100 2. Hacemos un NOT a todos los bits que quedan por la izquierda 1010111 1010100
  • 4. Tabla de comparación La tabla siguiente compara la representación de los enteros entre 8 y -8 (incluidos) usando 4 bits. Representación de enteros de 4 bits Decimal Entero Signo y Complemento Complemento BCD- positivo magnitud a1 a2 exceso 8 1000 n/a n/a n/a 1111 +8 0111 0111 0111 0111 1110 +7 0110 0110 0110 0110 1101 +6 0101 0101 0101 0101 1100 +5 0100 0100 0100 0100 1011 +4 0011 0011 0011 0011 0011 +3 0010 0010 0010 0010 1001 +2 0001 0001 0001 0001 1000 +1 0000 0000 0000 0000 0111 (+)0 (−)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. −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 Denys López Elaborado por: