Escolar Documentos
Profissional Documentos
Cultura Documentos
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.
R1 C R3 R4 R2 R2-1 Contador
Inicio 11011 0 00000 xxxx 100 1 0 0
1 00101 +
Resta 11011 1 00101 xxxx 100 1 0 0
Increm. Cont 11011 1 00101 xxxx 100 1 0 1
Desp. y rotac. 11011 1 10010 1xxx 010 0 1 1
0 11011 +
Suma 11011 0 01101 1xxx 010 0 1 1
Increm. Cont 11011 0 01101 1xxx 010 0 1 2
Desp. y rotac. 11011 0 00110 11xx 101 0 0 2
0 00000 +
Nada 11011 0 00110 11xx 101 0 0 2
Increm. Cont 11011 0 00110 11xx 101 0 0 3
Desp. y rotac. 11011 0 00011 011x 010 1 0 3
1 00101 +
Resta 11011 1 01000 011x 010 1 0 3
Increm. Cont 11011 1 01000 011x 010 1 0 4
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.
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
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).
2
3.- Multiplique, empleando el algoritmo adecuado, (13) x (-10) siendo +13
el multiplicando y -10 el multiplicador.
Resta 10011+
Suma 01101+
Resta 10011+
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).
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
Operación R1 R3 Comentarios
Inicio 0100 110
Resta siempre 1010+
Resultado resta 1110 110 ¿R1-R2 <0? Sí
Suma para restaurar 0110+
Suma restaurada 0100 110 0 R3 0
Desplazamiento izquierda 1001 10
Resta siempre 1010+
Resultado resta 0011 10 ¿R1-R2 <0? No
Desplazamiento izquierda 0111 0 01 R3 1
Resta siempre 1010+
Resultado resta 0001 0 ¿R1-R2 <0? No
011 R3 1
Desplazamiento izquierda 0010
Resta siempre 1010+
Resultado resta 1100 ¿R1-R2 <0? Sí
Suma para restaurar 0110+
Resultado suma 0010 0110 R3 0
Resto Cociente
4
SIN RESTAURACIÓN
Operación R1 R3 Comentarios
Inicio 0100 110
Resta inicial siempre 1010+
Resultado resta 1110 110 ¿BS? 1
0 R3 BS(R1)’. SUMA
Desplazamiento 1101 10
Suma 0110+
Resultado suma 0011 10 ¿BS? 0
01 R3BS(R1)’. RESTA
Desplazamiento 0111 0
Resta 1010+
Resultado resta 0001 0 ¿BS? 0
011 R3 BS(R1)’. RESTA
Desplazamiento 0010
Resta 1010+
Resultado resta 1100 ¿BS? 1
Restauración resto (*) 0110+ 0110 R3 BS(R1)’
Desplazamiento 0010
Resto Cociente
NOTA: El bit de signo resultante de hacer las sumas y las restas establece
qué bit se mete por la derecha en R3 y establece si sumar o restar en el
siguiente bucle.
(*) Hay que restaurar el resto al salir negativo, aunque le procedimiento sea SIN
RESTAURACIÓN
5
5. Dividir el número 225 entre 9 utilizando representación binaria sin signo
con el mínimo número posible de bits y empleando el algoritmo de división
CON restauración.
Operación R1 R3 Comentarios
Inicio 01110 0001
Resta siempre 10111+
Resultado resta 00101 0001 ¿R1-R2 <0? No
1 R3 1
Desplazamiento izquierda 01010 001
Resta siempre 10111+
Resultado resta 00001 001 ¿R1-R2 <0? No
11 R3 1
Desplazamiento izquierda 00010 01
Resta siempre 10111+
Resultado resta 11001 0100 ¿R1-R2 <0? Sí
Suma para restaurar 01001+
Suma restaurada 00010 01 110 R3 0
Desplazamiento izquierda 00100 1
Resta siempre 10111+
Resultado resta 11011 1 ¿R1-R2 <0? Sí
Suma para restaurar 01001+
Suma restaurada 00100 1 1100 R3 0
Desplazamiento izquierda 01001
Resta siempre 10111+
Resultado resta 00000 ¿R1-R2 <0? No
11001 R3 1
Resto Cociente
6
6. Realice la división 117 / 9 con y sin restauración.
CON RESTAURACIÓN
Operación R1 R3 Comentarios
Inicio 01110 101
Resta siempre 10111+
Resultado resta 00101 101 ¿R1-R2 <0? No
1 R3 1
Desplazamiento izquierda 01011 01
Resta siempre 10111+
Resultado resta 00010 01 ¿R1-R2 <0? No
11 R3 1
Desplazamiento izquierda 00100 1
Resta siempre 10111+
Resultado resta 11011 1 ¿R1-R2 <0? Sí
Suma para restaurar 01001+
Suma restaurada 00100 1 110 R3 0
Desplazamiento izquierda 01001
Resta siempre 10111+
Resultado resta 00000 ¿R1-R2 <0? No
1101 R3 1
Resto Cociente
7
117 → 0 1110101 +9 → 0 1001 (+R2)
- 9 → 1 0111 (-R2)
SIN RESTAURACIÓN
Operación R1 R3 Comentarios
Resto Cociente
NOTA: El bit de signo resultante de hacer las sumas y las restas establece
qué bit se mete por la derecha en R3 y establece si sumar o restar en el
siguiente bucle.
8
PUNTO FLOTANTE
7. Represente según el formato del IEEE754 el número real: 15.2 Exprese
el resultado en hexadecimal. Obtenga la aproximación por truncación y por
redondeo.
Por tanto
S EXP+127 MANTISA
0 100 0001 0 111 0011 0011 0011 0011 0011
O bien, en hexadecimal,
4 1 7 3 3 3 3 3
0,71 0,1011010111000010100011
9
Exponente + 127 = 128, binario 10000000
S EXP+127 MANTISA
4 0 2 D 7 0 A 3
C 8 8 6 0 8 0 0
10
OTROS TIPOS
10. Se sabe que al realizar una operación con el Algoritmo de Booth se
ejecuta la siguiente secuencia de operaciones DRDDSDRD (R: resta, S:
suma; D: desplazamiento). Si el resultado de la operación ha sido 9C
(expresado en hexadecimal), ¿cuál era el multiplicando? (1,2 puntos).
11