lunes, 22 de agosto de 2016

Ejercicios de Operaciones de Binarios

Resolución del ejercicio 3 de los ejercicios de realimentación sistemas de numeración



3-) Dados los siguientes pares de números calcular entre estos : a. Suma, b. Resta normal y por complemento a la base c. Multiplicación

(110010)2 y (11001)2

a. Suma

Como ambos números son binarios es una operación de dos bits por lo tanto el número de ajuste Na
sería Na = 4-2 = 2 = (10)2

               01 01 00 00 01 00 +
                    01 01 00 00 01
               01 10 01 00 01 01
             
Luego como 10 es igual a la base (2) se necesita aplicar el número de ajuste a esa cantidad

              01 10 01 00 01 01 +
                   10                   
              10 00 01 00 01 01

Nuevamente tenemos otro valor que es igual a la base, aplicamos nuevamente el número de ajuste

              10 00 01 00 01 01 +
              10                        
         01 00 00 01 00 01 01

Con esto ya todos los valores cumplen con las condiciones, por lo tanto el resultado de la suma es:

(110010)2 + (11001)2 = (1001011)2

b. Resta Normal

               110010 -
                11001
              011001

Para comprobar pasamos todas las cantidades a Decimal y aplicamos la resta tradicional

Minuendo

(110010)2 = (1x2^5) + (1x2^4) + (0x2^3) + (0x2^2) + (1x2^1) + (0x2^0)

(110010)2 = 32 + 16 + 2

(110010)2 = (50)10

Sustraendo

(11001)2 = (1x2^4) + (1x2^3) + (0x2^2) + (0x2^1) + (1x2^0)

(11001)2 = 16 + 8 + 1

(11001)2 = (25)10

Resultado

Tenemos que 50-25 = 25 que fue lo obtenido en el ejercicio.

Si nos damos cuenta el resultado obtenido en el ejercicio es igual al del sustraendo por lo que obviamos la comprobación.

b. Resta con Complemento a dos (C2)

Primero obtenemos el complemento a uno del sustraendo

        C1 de 11001 = 00110;

Luego sacamos el complemento a dos sumando 1 al bit menos significativo

       00110 +
              1
      00111

Finalmente le sumamos el (C2) del sustraendo al minuendo

            00111 +
          110010
          111001

Tenemos un bit que se desborda por la izquierda, por lo tanto se ignora quedando como resultado
(11001)2 = (25)10

c. Multiplicación

Se realiza de igual forma que en el sistema Decimal

                                              110010 *
                                                11001
                                              110010 +
                                            000000 +
                                          000000 +
                                        110010 +
                                      110010
                                   10011100010

Para comprobar que 50*25= 1250 podemos pasar el resultado a decimal que debería dar el mismo resultado.

(4A2B4)16 y (3FF2C)16

a. Suma

Ambos números son Hexadecimales por lo tanto es una operación con 4bits y el número de ajuste Na sería Na = 16-16 = 0 = (0000)16

                           0100 1010 0010 1011 0100 +
                           0011 1111 1111 0010 1100
                          1000 1010 0001 1110 0000

Las expresiones remarcadas quieren decir que dejaron carry al siguiente valor pero como el número de ajuste es cero, no alteraremos el resultado final aplicándolo por lo que tenemos que:


(4A2B4)16 + (3FF2C)16 =(8A1E0)16

b. Resta 

Para realizar la suma en hexadecimal debemos tener en cuenta que cuando se pide prestado al dígito siguiente, se está sumando 16 al dígito que pide. Por lo tanto

                        4A2B4 -
                        3FF2C
                        0A388

En este caso el 4 le pide prestado a B: por lo tanto al numero 4 se le suman 16 quedando en 20 y a B se le resta 1 quedando en A (recordando que B = 11).

También tenemos que el 2 le pide prestado a A: al 2 se le suman 16 quedando en 18 y a A se le resta 1 quedando en 9 (Recordando que A = 10).

Por ultimo la A le pide prestado al 4, como la A se le había restado 1 en el caso anterior tenemos que: 9 + 16 = 25 y 4-1 = 3.

Para comprobar se pasan las cantidades a decimal y se realiza la operación

(4A2B4)16 = (303796)10

(3FF2C)16 = (261932)10

(A388) = (41864)10

Por lo tanto 303796 - 261932 = 41864

Resta con complemento a dos (C2)

En este caso procederemos a convertir las cantidades a su valor equivalente en binario para poner sacar el (C2) cómodamente:


4A2B4 =(0100 1010 0010 1011 0100)2

3FF2C = (0011 1111 1111 0010 1100)2

(C1)(3FF2C)16 =(1100 0000 0000 1101 0011)2

Para sacar el complemento a dos, sumamos 1 al bit menos significativo

                            1100 0000 0000 1101 0011+
                                                               0001
                           1100 0000 0000 1101 0100

Ahora procedemos a sumarle el C2 del sustraendo al minuendo

                           1100 0000 0000 1101 0100 +
                           0100 1010 0010 1011 0100
                  0001 0000 1010 0011 1000 1000

Ignoramos el bit resaltado ya que el resultado no puede ser mayor que el minuendo. Por lo tanto obtenemos que: (0000 1010 0011 1000 1000)2 = (41864)10

c. Multiplicación

Para realizar esta operación es conveniente pasarlo a binario o decimal y proceder: en este caso usaremos decimal:

                       

                                                                 303796*
                                                                 261932
                                                                 607592
                                                               911388
                                                           2734164
                                                           303796
                                                       1822776
                                                       607592
                                                      79573893872
                                                               
                                           
               

                                       

                       
                                               
                               
   




                            

No hay comentarios.:

Publicar un comentario