departamento de informática. curso 2006-20071 la unidad aritmÉtica y lÓgica lecciÓn 4. circuitos...

87
Departamento de Informática. Curso 2 006-2007 1 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Upload: enrique-tomas-saez-de-la-fuente

Post on 24-Jan-2016

229 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 1

LA UNIDAD ARITMÉTICA Y LÓGICA

LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Page 2: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 2

EL SEMISUMADOR BINARIO

S = ab’ + ba’ = a b C = ab

Page 3: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 3

CIRCUITO DEL SEMISUMADOR BINARIO

Page 4: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 4

EL SUMADOR BINARIO COMPLETO

S = a’ b’ c + a’ b c’ + a b’ c’ + a b c C = a’ b c + a b’ c + a b c’ + a b c

Page 5: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 5

ECUACIONES DEL SUMADOR BINARIO COMPLETO

S = c ( a b ) C = a b + c ( a b)

Page 6: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 6

OTRO CIRCUITO SUMADOR BINARIO

Page 7: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 7

SUMADOR BINARIO PARALELO (CPA)

Tsumador = N x Tbit

Page 8: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 8

CIRCUITO DE SUMA Y RESTA

A-B = A+(-B) = A+(B’+1) = A+B’+1

Page 9: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 9

CIRCUITOS SUMADORES RÁPIDOS

La causa del retardo es la propagación del acarreo entre etapas.

Solución: cálculo anticipado del acarreo

Definimos

Gi = ai x bi variable generada

Pi = ai bi variable propagada

Page 10: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 10

ECUACIONES DEL BIT DE CARRY

Sustituyendo estas variables en las ecuaciones lógicas del sumador binario tendremos:

Si = Pi ci

Ci+1 = ai bi + ci (ai + bi ) = Gi + ci Pi

Page 11: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 11

ECUACIONES DEL BIT DE CARRY

Page 12: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 12

CÉLULA SUMADORA RÁPIDA

Page 13: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 13

CIRCUITO GENERADOR DE LLEVADAS

Page 14: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 14

CIRCUITO GENERADOR DE LLEVADAS

Page 15: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 15

CIRCUITO GENERADOR DE LLEVADAS

Page 16: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 16

CIRCUITO SUMADOR CLA

Page 17: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 17

SUMADORES RÁPIDOS DE 16 BITS

Circuito LAC de 16 bits es excesivamente complejo

Se buscan soluciones a partir de LAC de 4 bits

El problema es la generación anticipada de los carrys c4 , c8 , c12 y c16

Page 18: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 18

CIRCUITOS LAC DE GRUPO

C4 = G3 + P3 G2 + P3 P2 G1 + P3 P2 P1 G0 + P3 P2 P1 P0 c0

Llamando G0

G = G3 + P3 G2 + P3 P2 G1 + P3 P2 P1 G0

P0G = P3 P2 P1 P0

Podemos escribir: C4 = G0

G + P0G c0

Page 19: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 19

CIRCUITO SUMADOR RAPIDO DE 16 BITS

Generar las funciones G y P para cada bit a partir de a y b y el carry inicial

Generar las funciones G y P de grupo a partir de G y P

Generar los bits de carry de grupo (c4 , c8 , c12 , c16 )

Generar el resto de las llevadas Generar todos los bits del resultado

Page 20: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 20

SUMADOR CON SELECCIÓN DE ARRASTRE

Page 21: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 21

SUMADOR CON PUENTEO DE ARRASTRES

Page 22: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 22

SUMADORES CONDICIONALES

Son una evolución de los sumadores con selección de llevada. Las ecuaciones de las salidas en función del carry entrante son:

Page 23: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 23

CELULA DEL SUMADOR CONDICIONAL

Page 24: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 24

SUMADOR CONDICIONAL DE 2 BITS

Page 25: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 25

SEGUNDA ETAPA DE UN SUMADOR CONDICIONAL DE 4 BITS

Page 26: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 26

SUMADOR CONDICIONAL DE 8 BITS

Page 27: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 27

TABLA DEL SUMADOR CONDICIONAL

Page 28: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 28

SUMADORES MULTIOPERANDO CSA

Page 29: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 29

ARBOLES DE WALLACE

Page 30: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 30

LA UNIDAD ARITMÉTICA Y LÓGICA

LECCIÓN 5. CIRCUITOS ARITMÉTICOS DE MULTIPLICACIÓN DE ENTEROS

Page 31: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 31

MULTIPLICACION DE NÚMEROS NATURALES

Page 32: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 32

CIRCUITOS NMM

Page 33: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 33

CÉLULA ELEMENTAL DEL MULTIPLICADOR

Page 34: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 34

MATRIZ SUMADORA

Page 35: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 35

MULTIPLICADORES DE 8 BITS

Page 36: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 36

MULTIPLICADORES DE 8 BITS

Page 37: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 37

HARDWARE PARA ALGORITMOS DE MULTIPLICACIÓN

Page 38: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 38

MULTIPLICACIÓN POR SUMA Y DESPLAZAMIENTO

Sea la operación 13x11

Page 39: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 39

ALGORITMO DE MULTIPLICACIÓN POR SUMA Y DESPLAZAMIENTO

1. Inicialización: 0 A ; Multiplicando B ;

Multiplicador MQ ; N I2. Analizar bit MQ0

1. Si MQ0 = 0 Ir a 32. Si MQ0 = 1 (A) + (B) (A) e ir a 3

3. Desplazar C-A-MQ un bit a la derecha4. Decrementar I5. Comprobar I

1. Si I = 0 Terminar2. Si I 0 Ir a 2

Page 40: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 40

EJEMPLO

Page 41: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 41

ALGORITMO DE ROBERTSON

Sirve para multiplicar un número positivo y un número negativo

Page 42: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 42

ALGORITMO DE ROBERTSON

Sólo sirve para el caso de multiplicando positivo y multiplicador negativo.

Para los n-1 primeros bits del multiplicador se utiliza el algoritmo anterior.

Para el bit de signo del multiplicador se pone el complemento a dos del multiplicando

El resultado es un número negativo

Page 43: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 43

JUSTIFICACIÓN DEL ALGORITMO DE ROBERTSON

Page 44: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 44

REGLA DE LA CADENA

Page 45: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 45

MULTIPLICADORES BINARIOS RECODIFICADOS

Recodificar el multiplicador para evitar las cadenas de “1”

Efectuar la multiplicación tradicional donde el sumando correspondiente es 0, Mcando ó-Mcando en función de que el bit correspondiente del multiplicador sea 0, 1, -1.

Tenemos presente siempre la necesidad de extender el signo en los sumandos.

Page 46: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 46

ALGORITMO DE BOOTH

Page 47: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 47

DIAGRAMA DE FLUJO

Page 48: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 48

CASOS ESPECIALES

Caso de “1” aislado 00100 01-100 00100 Solución: No codificar

Caso de “0” aislado 11011 0-1100 00-100 Solución : Cambiar el 0 por –1

Page 49: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 49

OTRA RECODIFICACIÓN DEL MULTIPLICADOR

Page 50: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 50

ALGORITMO DE SOLAPAMIENTO DE TERNAS

1. Inicialización ( Similar a casos anteriores salvo que ahora N/2 I)

2. Analizar el valor numérico de MQ1 – MQ0 – MQ-1 y actuar como en la tabla precedente

3. Desplazamiento aritmético de A-MQ de 2 bits a la derecha.

4. Decrementar I5. Si I0 ir a 2, en otro caso Fin.

Page 51: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 51

DIAGRAMA DE FLUJO

Page 52: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 52

CIRCUITOS MULTIPLICADORES EN COMPLEMENTO A DOS

Page 53: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 53

MULTIPLICACION DE NUMEROS ENTEROS CON SIGNO

Page 54: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 54

PLANTEAMIENTO DEL PROBLEMA

Page 55: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 55

POSIBLE SOLUCIÓN

Page 56: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 56

MULTIPLICADOR DE PEZARIS

Page 57: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 57

ALGORITMO DE BAUGH-WOOLEY

Page 58: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 58

MULTIPLICADOR DE BAUGH-WOOLEY

Page 59: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 59

LA UNIDAD ARITMÉTICA Y LÓGICA

LECCIÓN 6. CIRCUITOS ARITMÉTICOS Y ALGORITMOS DE DIVISION DE ENTEROS

Page 60: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 60

ALGORITMO DE DIVISIÓN CON RESTAURACIÓN

Es el algoritmo de división convencional. Los pasos a seguir son los siguientes:1. Inicialización: Dividendo MQ ; Divisor B ; N I

; 0 A 2. Desplazamiento de A-MQ a la izquierda 1 bit.3. Restar A-B A4. Comprobar si A<0 :

1. Si es cierto Restaurar el dividendo A+ B A2. Si no es cierto 1 MQ0

5. Decrementar contador I6. Comprobar si I =0

1. Si es cierto FIN2. Si no es cierto Ir al paso 2

Al final de la operación tenemos el cociente en MQ y el resto en A.

Page 61: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 61

Page 62: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 62

EJEMPLO

Page 63: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 63

ALGORITMO DE DIVISIÓN SIN RESTAURACIÓN

Es una mejora del algoritmo anterior que se basa en lo siguiente: si seguimos el diagrama de flujo del algoritmo sin restauración a partir del momento en que se comprueba el valor del bit de menor peso del divisor la operación a realizar es : Si A > 0 desplazamos (2ª) y restamos

(2A – B) Si A < 0 sumamos B (A + B),

desplazamos 2(A + B) y restamos B (2A + B)

Page 64: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 64

ALGORITMO DE DIVISIÓN SIN RESTAURACIÓN

1. Inicialización: Dividendo MQ ; Divisor B ; N-1 I ; 0 A

2. Desplazamiento a la izquierda de A-MQ3. Restar A-B A4. Analizar A:

1. Si A <0 desplaz a la izquierda de A-MQ y sumar A+B A

2. Si A >0 1 MQ0 desplaz a la izquierda de A-MQ y restar A-B A

5. Decrementar el contador I6. Si I >0 ir a 47. Analizar A:

1. Si A <0 sumar A+B A2. Si A >0 1 MQ0

8. FIN

Page 65: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 65

Page 66: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 66

EJEMPLO

Page 67: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 67

MÉTODO DE DIVISIÓN POR CONVERGENCIA

Page 68: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 68

ELECCIÓN DE LOS VALORES DE Ri

Page 69: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 69

DIAGRAMA DE FLUJO DEL PROCESO

Page 70: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 70

METODO DE DIVISIÓN MEDIANTE EL INVERSO DEL DIVISOR

Page 71: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 71

APLICACIÓN DEL MÉTODO DE NEWTON-RAPHSON

Page 72: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 72

ELECCIÓN DEL VALOR INICIAL

Page 73: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 73

PROCEDIMIENTO DE CALCULO DEL INVERSO

Page 74: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 74

DIAGRAMA DE FLUJO

Page 75: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 75

CELDA BÁSICA DEL DIVISOR COMBINACIONAL

Page 76: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 76

DIVISIÓN COMBINACIONAL

Page 77: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 77

LA UNIDAD ARITMÉTICA Y LÓGICA

LECCIÓN 7. ARITMÉTICA DE PUNTO FLOTANTE

Page 78: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 78

REPRESENTACION BINARIA DE NUMEROS REALES

Un número real consta de parte entera y parte fraccionaria y su representación binaria es la siguiente:

En la práctica para representar en binario un número real trabajamos por separado con su parte entera y su parte fraccionaria

Page 79: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 79

EJEMPLO

Sea por ejemplo 23.85 La parte entera 23 = 10111 y la parte fraccionaria la pasamos a binario multiplicando por 2 y quedándonos con la parte fraccionaria:

.85 x 2 = 1.70 .70 x 2 = 1.40 .40 x 2 = 0.80 .80 x 2 = 1.60 .60 x 2 = 1.20 .20 x 2 = 0.40 .40 x 2 = 0.80 Luego 0.85 = 0.1101100 ….

Por tanto 23.85 = 10111.1101100

Page 80: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 80

REPRESENTACION NORMALIZADA. NORMA IEEE-754

En simple precisión la longitud de palabra es de 32 bits

Vemos que la mantisa está normalizada de modo que 1 F 2 y que el exponente se almacena en exceso a 127 para evitar tener que usar otro bit de signo

Page 81: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 81

REPRESENTACION NORMALIZADA. NORMA IEEE-754

En doble precisión la longitud de palabra es 64 bits

Ahora el exponente está en exceso a

1023 y la mantisa está normalizada lo mismo que en el punto anterior

Page 82: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 82

REPRESENTACION APROXIMADA DE NUMEROS REALES

Rango : Nos da el conjunto de intervalos donde existen números representables, depende del exponente

Precisión : Nos da la diferencia entre dos números representables consecutivos, depende del número de bits de la mantisa.

El rango y la precisión son conceptos antagónicos pues para mejorar la precisión habría que aumentar la mantisa y por tanto reducir el exponente lo que lleva a una disminución del rango.

Page 83: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 83

TIPOS DE NUMEROS REALES

Normalizados: 0 < E < Emax 1 1.F < 2

Cero : E = 0 F = 0 (-1)S x 0 existe +0 y –0

Infinitos E = 255 F =0 (-1)S x existe +infinito y – infinito

No reales ( not a number) E = 255 F >0

Denormales E = 0 F > 0

Page 84: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 84

SUMA Y RESTA DE NÚMEROS EN PUNTO FLOTANTE

Alinear mantisas : Tomar el número con menor exponente y desplazar su mantisa a la derecha hasta igualar los exponentes

Sumar o restar mantisas Normalizar el resultado si fuera

necesario Redondear la mantisa al número de bits

apropiado Normalizar si fuera preciso

Page 85: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 85

MULTIPLICACION Y DIVISIÓN DE NÚMEROS EN PUNTO FLOTANTE

Sumar o restar los exponentes (y restar o sumar el exceso)

Multiplicar o dividir las mantisas Normalizar el resultado Redondear la mantisa al número

apropiado de bits Normalizar si es preciso Determinar el signo del resultado

Page 86: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 86

Page 87: Departamento de Informática. Curso 2006-20071 LA UNIDAD ARITMÉTICA Y LÓGICA LECCIÓN 4. CIRCUITOS ARITMÉTICOS DE SUMA Y RESTA DE ENTEROS

Departamento de Informática. Curso 2006-2007 87