Unidad Aritmetico Logica

Páginas: 21 (5045 palabras) Publicado: 23 de octubre de 2012
Unidad Aritmético Lógica

Escuela Superior de Informática Universidad de Castilla-La Mancha

Contenido
• Introducción – Operaciones lógicas: desplazamientos lógicos – Operaciones aritméticas: multiplicación y división • Multiplicación – Sin signo: suma desplazamiento – Sin signo: sumas y restas – Con signo: Algoritmo de Booth • División – Con restauración – Sin restauración • Coma flotante La ALU dentro del computador

Operaciones lógicas: desplazamientos

Operaciones aritméticas: multiplicación y división
• La operación básica es la suma, que se supone conocida en este curso • También se suponen conocidos los multiplicadores paralelo de tipo combinacional • En este tema se estudian los algoritmos para realizar las operaciones desde el punto de vista de la arquitectura,centrados en la multiplicación y la división

MULTIPLICACIÓN BINARIA SIN SIGNO: SUMA DESPLAZAMIENTO

Fundamentos
Se multiplica cada bit del multiplicador, empezando por el menos significativo, por todos los bits del multiplicando Si es 0, el resultado es 0 Si es 1, el resultado es el multiplicando Cada vez que se considera un nuevo bit del multiplicador, se desplaza hacia la izquierda unaposición el nuevo producto y se añade a la suma parcial acumulada La última suma parcial será el resultado

Ejemplo
6x9=54
inicial

0 1 1 0 1 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 0 1 0 1 1 0 0 1 0 1 0

x

Primera suma parcial acumulada

Segunda suma parcial acumulada

0 0 0 1 0 0 1

1 1 0

Ultima suma parcial acumulada (RESULTADO)

IDEA BÁSICA
Hay que sumar las sumas acumuladascon el multiplicando DESPLAZADO A LA IZQUIERDA cuando el LSB del multiplicador sea 1. EN LUGAR DE DESPLAZAR A LA IZQUIERDA EL MULTIPLICANDO, SE DESPLAZAN A LA DERECHA LAS SUMAS PARCIALES

Necesidades
El producto de un número binario de n bits con otro de m bits necesita m+n bits Sea A el multiplicador y B el multiplicando En el caso de que m=n, se necesitan dos registros iguales para almacenarel resultado Sean R3 y R4 los registros donde se va almacenando el resultado

Arquitectura

Contador

R1

CON

R2

C

R3

R4

Algoritmo Suma Desplazamiento
Se inicializan a 0 el contador de bits del multiplicador y el registro R3 Se carga R1 con el multiplicando A y R2 con el multiplicador B Se analiza el LSB de R2 Si es 1, se suma R1+ R3 y el resultado se deja en R3 Si es 0,se suma R1 + 0 (es decir, no se hace nada) y el resultado se deja en R3 Se incrementa el contador Se produce un desplazamiento aritmético (con extensión de signo) de una posición hacia la derecha del conjunto C-R3-R4 Se realiza una rotación circular a derecha de R2 Se mira si el contador ha llegado hasta el final En caso negativo se repite el proceso, volviendo a preguntar por el LSB de R2 En casoafirmativo se finaliza el proceso y el resultado está en C-R3-R4

Inicio, R30, Cont0 R1A R2B R20? 1 R3 R3+R1 Incrementa contador C-R3-R4 desplaza derecha R2 rota circul NO Cont? SI Fin 0

SUMA DESPLAZAMIENTO

Ejemplo
Multiplicar A=0110 por B=1001
El resultado debe ser 6x9=54 (en binario 0011 0110)
Contador

R1

R2

C

R3

R4

Inicialización
Se carga A en R1 y B enR2.
Se pone a 0 el registro R3 y el contador
Contador

0110

0

1001

0

0000

XXXX

Comprobación de R20 y acción
Como el LSB de R2 es 1 se suman R3 + R1 y se deja el resultado en R3

Contador

0110

0

1001

0

0110

XXXX

Incremento contador
Se incrementa el contador en una unidad

Contador

0110

1

1001

0

0110

XXXX

Desplazamiento a derechaSe desplaza el conjunto C-R3-R4 una posición a la derecha

Contador

0110

1

1001

0

0011

0XXX

Rotación circular de R2
El registro R2 rota a la derecha de forma circular

Contador

0110

1

1100

0

0011

0XXX

¿Ha llegado al final?
Comprueba que el contador no es 4 y repite el bucle

Contador

0110

1

1100

0

0011

0XXX

Comprobación...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Unidad aritmetico logico
  • Unidad aritmetico-logica
  • ALU
  • Unidad Aritmetica Logica
  • Unidad Aritmetica Logica
  • Unidad aritmético lógica
  • Unidad Logica Aritmetica
  • Unidad aritmetica logica

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS