EJERCICIOS RESUELTOS DEL TEMA 5

EJERCICIOS RESUELTOS DEL TEMA 5 MULTIPLICACIÓN 1.- Multiplicar los números 27 y -7 utilizando representación binaria en complemento a 2, con el mínimo...
4 downloads 0 Views 160KB Size
EJERCICIOS RESUELTOS DEL TEMA 5 MULTIPLICACIÓN 1.- Multiplicar los números 27 y -7 utilizando representación binaria en complemento a 2, con el mínimo número posible de bits y empleando el algoritmo apropiado. Vamos a multiplicar +27 (multiplicando) por -7 (multiplicador) con el algoritmo de Booth. + 27 0 11011 - 271 00101

Inicio Resta Increm. Cont Desp. y rotac. Suma Increm. Cont Desp. y rotac. Nada Increm. Cont Desp. y rotac. Resta Increm. Cont

+7  0 111 - 7  1 001

R1 C R3 11011 0 00000 1 00101 + 11011 1 00101 11011 1 00101 11011 1 10010 0 11011 + 11011 0 01101 11011 0 01101 11011 0 00110 0 00000 + 11011 0 00110 11011 0 00110 11011 0 00011 1 00101 + 11011 1 01000 11011 1 01000

Desp. y rotac. 11011 1 10100

R4 R2 R2-1 xxxx 100 1 0

Contador 0

xxxx 100 1 xxxx 100 1 1xxx 010 0

0 0 1

0 1 1

1xxx 010 0 1xxx 010 0 11xx 101 0

1 1 0

1 2 2

11xx 101 0 11xx 101 0 011x 010 1

0 0 0

2 3 3

011x 010 1 011x 010 1

0 0

3 4

0011 001 0

1

4  Fin

NOTA 1: “Resta” supone sumar lo que hay en R3 con 1 00101 (-27) y “Suma” supone sumar lo que hay en R3 con 0 11011 (+27). NOTA 2: R2 y R4 podrían ser el mismo registro, ya que a medida que van entrando bits desde la izquierda a R4, van dejando de ser necesarios los mismos bits en R2. NOTA 3: Obsérvese que el valor de la columna R1 del multiplicando R1 no varía en el proceso, con lo cual se podría prescindir de ella. Simplemente se suma o resta, según el caso, con C R3.

1

2.- Realizar la multiplicación de los números 38 (multiplicando) y -6 (multiplicador) empleando representación binaria en complemento a 2 con el mínimo número de bits y utilizando para ello el algoritmo apropiado. Vamos a multiplicar +38 (multiplicando) por -6 (multiplicador) con el algoritmo de Booth +38  0 100110 -38 1 011010 Operación Inicio

+6  0 110 - 6  1 010

Resta Increm. Cont

C 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1

Desp. y rotac.

1 110001

Nada Increm. Cont Desp. y rotac. Resta Increm. Cont Desp. y rotac. Suma Increm. Cont Desp. y rotac.

R3 000000 000000 + 000000 000000 000000 011010 + 011010 011010 101101 100110 + 010011 010011 001001 011010 + 100011 100011

R2=R4 R2-1 Contador 101 0 0 0 101 0 0 101 0 0 010 1 0 (*)

0 1 1

010 1 0 010 1 0 001 0 1 (*)

1 2 2

001 0 1 001 0 1 100 1 0 (*)

2 3 3

100 1 0 100 1 0

3 4

1100 0 1 (*)

4  Fin

NOTA 1: “Resta” supone sumar lo que hay en R3 con 1 011010 (-38) y “Suma” supone sumar lo que hay en R3 con 0 100110 (+38). NOTA 2: se han unido en un único registro R2 y R4. NOTA 3: Se ha prescindido de la columna R1. (*): El anterior bit R2-1, tras desplazarse a la derecha, se pierde.

2

3.- Multiplique, empleando el algoritmo adecuado, (13) x (-10) siendo +13 el multiplicando y -10 el multiplicador.

+13  +R1 = 0 1101

+10  0 1010

-13  -R1 = 1 0011

- 10 1 0110

Operación

C R3

R4=R2

R2-1

Comentarios

Inicio

00000

10110

0

No hay cambio de bit

Desplazamiento derecha

00000

01011

0 (*)

Comienza cadena unos

Resta

10011+

Resultado resta

10011

01011

0

Desplazamiento derecha

11001

10101

1 (*)

No hay cambio de bit

Desplazamiento

11100

11010

1 (*)

Comienza cadena ceros

Suma

01101+

Resultado suma

01001

11010

1

Desplazamiento derecha

00100

11101

0 (*)

Resta

10011+

Resultado resta

10111

11101

0

Desplazamiento

11011

11110

1 (*)

Comienza cadena unos

Fin

NOTA: “Resta” supone sumar lo que hay en la parte alta con 1 0011 (-13) y “Suma” supone sumar lo que hay en la parte alta con 0 1101 (+13). (*): El anterior bit R2-1, tras desplazarse a la derecha, se pierde.

3

DIVISIÓN 4. Realice la operación 38 dividido entre 6, aplicando un algoritmo de división CON y SIN restauración. Escribir todo el desarrollo del algoritmo. CON RESTAURACIÓN 38 → 0 100110

+6 → 0 110 (+R2) - 6 → 1 010 (-R2)

Operación Inicio Resta siempre Resultado resta Suma para restaurar Suma restaurada Desplazamiento izquierda Resta siempre Resultado resta Desplazamiento izquierda Resta siempre Resultado resta Desplazamiento izquierda Resta siempre Resultado resta Suma para restaurar Resultado suma

R1 0100 110 1010+ 1110 110 0110+ 0100 110 1001 10 1010+ 0011 10 0111 0 1010+ 0001 0

R3

Comentarios

¿R1-R2