Está en la página 1de 37

Universidad Autnoma del

Per
Carrera Profesional de Ing. de
Sistemas
CURSO
ARQUITECTURA DEL COMPUTADOR

SESION 02: Lgica de Transferencia de


Registros
Ing. Francisco Asdrbal Flores Luna
CIP 55473
F.A.F.L.

1
floresf@autonoma.edu.pe

floresf@autonoma.edu.pe

Nmeros de punto flotante Base 10


Nmeros de punto flotante permiten expresar nmeros muy
grandes y muy pequeos usando slo unos pocos dgitos, a
expensas de la precisin.
Ejemplo (+6.023 x 1023):

F.A.F.L.

floresf@autonoma.edu.pe

Normalizacin

El nmero 254 en base 10 se puede representar en forma de punto


flotante como 254 x 100, o equivalentemente como:
25.4x101, o
2.54x102, o
0,254 x103, o
0.0254 x104,

F.A.F.L.

o infinitamente de muchas otras maneras, lo que crea problemas


cuando se hacen comparaciones, con tantas representaciones de un
mismo nmero.
Nmeros de punto flotante por lo general son normalizados, en el
que se localiza el punto de base en una sola posicin posible para un
nmero dado.
Por lo general, pero no siempre, la representacin normalizada
coloca el punto de base inmediatamente a la izquierda de la
izquierda, dgito diferente de cero en la fraccin, como en: 0.254 x
103.

floresf@autonoma.edu.pe

Ejemplo de punto flotante

Representar .254 x 103 en una base 8 normalizada formato de


punto flotante con un bit de signo, seguido por un exponente
de 3 bit exceso 4, seguido de cuatro dgitos en base 8.
Paso # 1: Convertir a la base de destino.
.254 x 103 = 25410. Utilizando el mtodo del residuo, nos
encontramos con que 25410 = 376 x 80:
254 / 8 = 31 R 6
31 / 8 = 3 R 7

3/8=0R3

F.A.F.L.

Paso # 2: Normalizar: 376 x 80 = 0.376 x 83.


Paso # 3: Rellene los campos de bits, con signo positivo (bit de
signo = 0), un exponente de 3 + 4 = 7 (exceso 4), y la fraccin
de 4-dgitos = .3760:
0 111. 011 111 110 000

floresf@autonoma.edu.pe

Error, Rango y precisin (I)

En el ejemplo anterior, tenemos la base b = 8, el


nmero de dgitos significativos (no bits!) en la
fraccin s = 4, el valor exponente ms grande (no
combinacin de bits) M = 3, y el valor exponente
menor m =-4.
En el ejemplo anterior, no existe una representacin
explcita de 0, pero tiene que haber una combinacin
de bits especiales reservadas para 0 en caso contrario
no habra manera de representar 0 sin violar la regla
de normalizacin. Se asume que la combinacin de
bits de 0 000 000 000 000 000 representa 0.

F.A.F.L.

floresf@autonoma.edu.pe

Error, Rango y precisin (II)


Usando b, s, M y m, quienes caracterizan a esta
representacin de punto flotante en trminos de mayor
nmero positivo representable, el ms pequeo (cero)
nmero positivo representable, la distancia ms pequea
entre dos nmeros sucesivos, la mayor distancia entre los
dos nmeros sucesivos, y el nmero total de nmeros que
se pueden representar.
Mayor nmero representable: bM x (1 b-S) = 83 x (1 - 8-4)
Ms pequeo que puede representarse nmeros:
bm x b-1 = 8-4-1 = 8-5
Distancia ms grande: bM xb-S = 83-4 = 8-1
Distancia ms pequea: bm x b-S= 8-4-4 = 8-8

F.A.F.L.

floresf@autonoma.edu.pe

Error, Rango y precisin (III)

Nmeros a representar: Hay 5 componentes: (A) bit de signo, para


cada nmero, salvo 0 para este caso, como una versin positiva y
negativa; (B) (M - m) + 1 exponentes; (C) b - 1 valores para el
primer dgito (0 no est permitida para el primer dgito
normalizado), (D) BS-1 los valores de cada uno de los s-1 dgitos
restantes, ms (E) una representacin especial para 0. Para este
ejemplo, los 5 componentes como resultado: 2 x ((3 - 4) + 1) x (8 1) x 84-1 + 1 nmeros que pueden ser representados.
Nota: este nmero debe ser mayor que el nmero de posibles
combinaciones de bits que se pueden generar, que es de 216.

F.A.F.L.

floresf@autonoma.edu.pe

Ejemplo de un formato de punto flotante

F.A.F.L.

Nmero ms pequeo es 1 / 8
Nmero Mayor es 7 / 4
Distancia ms pequea es 1 / 32
Distancia ms grande es 1 / 4
Nmero de nmeros representables es de 33.

floresf@autonoma.edu.pe

Tamao de la distancia Sigue al Tamao


Exponente

El error relativo es aproximadamente la misma para todos los


nmeros.
Si tomamos la relacin de una gran distancia a un nmero
grande, y que para comparar la proporcin de una pequea
distancia a un pequeo nmero, a continuacin, las razones son

F.A.F.L.

floresf@autonoma.edu.pe

Ejemplo de conversin

Ejemplo: Convertir la notacin cientfica (9.375 x 10-2)10 a base 2


Comience por la conversin de base 10 de punto flotante a la base
10 punto fijo, moviendo el punto decimal dos posiciones hacia la
izquierda, que corresponde al exponente -2: 0,09375.
A continuacin, convertir de base 10 punto fijo a la base 2 del punto
fijo:
.09375 X 2 = 0,1875

.1875 X 2 = 0,375
.375 x 2 = 0,75

.75 x 2 = 1.5
.5 x 2 = 1.0

Por lo tanto, (.09375)10 = (.00011)2.


Por ltimo, convertir a la base 2 de punto flotante normalizados:
.00011 =. 00011 x 20 = 1.1 x 2-4

F.A.F.L.

floresf@autonoma.edu.pe

Formatos IEEE-754 de punto flotante

F.A.F.L.

Ejemplos de formatos IEEE-754


Valor

Patrn de Bits
Signo Exponente

Fraccin

(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)

+1.101 x 25
-1.01011 x 2-126
+1.0 x 2127
+0
-0
+
+2-128
+NaN

0
1
0
0
1
0
0
0

1000 0100
0000 0001
1111 1110
0000 0000
0000 0000
1111 1111
0000 0000
1111 1111

101 0000 0000 0000 0000 0000


010 1100 0000 0000 0000 0000
000 0000 0000 0000 0000 0000
000 0000 0000 0000 0000 0000
000 0000 0000 0000 0000 0000
000 0000 0000 0000 0000 0000
010 0000 0000 0000 0000 0000
011 0111 0000 0000 0000 0000

(i)

+2-128

011 0111 1111

0000 0000 0000 0000 0000 0000


0000 0000 0000 0000 0000 0000 0000

F.A.F.L.

floresf@autonoma.edu.pe

Ejemplo de conversin IEEE-754


Ejemplo de conversin IEEE-754
Representar -12,62510 en formato IEEE-754 de simple
precisin.
Paso # 1: Convertir a base binaria. -12.62510 = -1100,1012
Paso # 2: Normalizar. -1100.1012 = -1.1001012 X 23
Paso # 3: Rellene los campos de bits. Signo es negativo, por lo
que 1 el bit signo. Exponente sea exceso a 127 (no el exceso a
128!), Por lo que representado el exponente es como el
entero sin signo de 3 + 127 = 130. El valor Principal 1 de
mantisa est oculto, la combinacin de bits al final es:

1 1000 0010 .1001 0100 0000 0000 0000 000

F.A.F.L.

floresf@autonoma.edu.pe

Efecto de la prdida de precisin

Segn el Gobierno de los EE.UU., existi una prdida de precisin en


la conversin de nmeros enteros de 24 bits en nmeros de punto
flotante de 24 bits el cual fue el responsable del fracaso de una batera
antimisiles Patriot.

F.A.F.L.

floresf@autonoma.edu.pe

Aritmtica Binaria
Informacin

general
Suma y resta de punto fijo
Multiplicacin y Divisin de punto fijo
La aritmtica de punto flotante
Alto rendimiento aritmtico
Caso de Estudio: calculadora Aritmtica
usando cdigo decimal binario (BDC)

F.A.F.L.

floresf@autonoma.edu.pe

Aritmtica computacional
Usando representaciones numricas vistas
anteriormente, vamos a ver las cuatro
operaciones aritmticas bsicas: suma, resta,
multiplicacin, divisin.
Tema significativo incluido: punto fijo versus a la
aritmtica de punto flotante, desbordamiento y
subdesbordamiento, el manejo de nmeros con
signo, y el rendimiento.
Observemos primero en aritmtica de punto
fijo, y luego en aritmtica de punto flotante.

F.A.F.L.

floresf@autonoma.edu.pe

Crculo de nmeros de 3-bit

Nmero complemento a dos


Los nmeros se pueden sumar o restar atravesando el crculo
hacia la derecha el nmero de la suma y la resta de la izquierda.
Desbordamiento se produce cuando se hace una transicin +3 a
-4 mientras se procede alrededor del crculo aadiendo un
nmero, o -4 a +3 restando.

F.A.F.L.

floresf@autonoma.edu.pe

Desbordamiento (Overflow)
El desbordamiento se produce cuando la adicin de dos
nmeros positivos produce un resultado negativo, o cuando la
adicin de dos nmeros negativos produce un resultado
positivo. Adicin de operandos con diferentes signos nunca
produce un desbordamiento.
Tenga en cuenta que descartar el acarreo del bit ms
significativo durante el complemento a dos, adems es normal,
y no se indican por desbordamiento.
Como ejemplo de desbordamiento, considerar la adicin de
(80 + 80 = 160), que produce un resultado de -9610 en un
formato de complemento a dos de 8-bit :

01010000 = 80
+ 01010000 = 80

10100000 = -96 (no 160 porque el bit de signo es 1, negativo)


F.A.F.L.

floresf@autonoma.edu.pe

Adicin con Acarreo en cascada

Dos nmeros binarios A y B se suman de derecha a izquierda,


la creacin de una suma y un acarreo en las salidas de cada
sumador completo para cada posicin de bit.

F.A.F.L.

floresf@autonoma.edu.pe

La construccin de grandes sumadores

Un sumador de 16-bit puede estar formado en cascada de


sumador con acarreo de rizado de 4-bit.

F.A.F.L.

floresf@autonoma.edu.pe

Sustractor total

Tabla de verdad y el smbolo esquemtico de un restador


con prstamo en rizado:

ai

bi

bori

difi

bori+1

F.A.F.L.

floresf@autonoma.edu.pe

Sustractor con prstamo en Rizado.

F.A.F.L.

Una prstamo en rizado de un sustractor puede estar


compuesto en cascada de sustractores completos.
Dos nmeros binarios A y B se restan de derecha a izquierda,
creando una diferencia y un prstamo en las salidas de cada
restador completo para cada posicin de bit.

floresf@autonoma.edu.pe

Sumador / restador combinado

Un simple acarreo rizado del sumador puede realizar tanto en la


suma y resta, mediante la formacin del negativo con
completamente a dos para B cuando se resta. (Nota, Tenga en
cuenta que sumar +1 C0 es el complemento a dos.)

F.A.F.L.

floresf@autonoma.edu.pe

Adicin en complemento a 1 (Uno)

Un ejemplo de complemento
a uno de un nmero entero
sumado con el acarreo final:

El acarreo final se necesita


porque hay dos
representaciones para el 0 en
complemento a uno. Ambas
representaciones para 0 son
visitas cuando uno o ambos
operandos son negativos.

F.A.F.L.

floresf@autonoma.edu.pe

Crculo Numrico (Complemento a UNO)

El crculo Nmero de tres bits con representacin de


complemento a uno. Fjese en las dos representaciones para el
0.

F.A.F.L.

floresf@autonoma.edu.pe

Acarreos finales para las fracciones

El acarreo fina complica la adicin de complemento a uno por


falta de enteros, y generalmente no se usa para esta situacin.
La cuestin es que la distancia entre las dos representaciones del
0 es de 1.0, mientras que la posicin ms a la derecha fraccin es
menor que 1.

F.A.F.L.

floresf@autonoma.edu.pe

Ejemplo de multiplicacin

Multiplicacin de dos enteros de 4 bits binarios sin signo


produce un resultado de 8-bits.

Multiplicacin de dos enteros binarios con signo de 4-bits


produce un resultado de 7-bit (cada operando se reduce a un
bit de signo y 3 bits de magnitud para cada operando,
produciendo un resultado de 6 bits y con un bit signo).

F.A.F.L.

floresf@autonoma.edu.pe

Un Multiplicador serial

F.A.F.L.

floresf@autonoma.edu.pe

Ejemplo: Multiplicacin usando la multiplicacin serial

F.A.F.L.

floresf@autonoma.edu.pe

Ejemplo de Divisin en Base 2


(7 / 3 = 2)10 con un residuo R de 1
Equivalente (0111 / 11 = 10)2 con un residuo R de 1

F.A.F.L.

floresf@autonoma.edu.pe

Divisor Serial

F.A.F.L.

F.A.F.L.

Ejemplo: (Divisin Usando un Divisor Serial)

floresf@autonoma.edu.pe

floresf@autonoma.edu.pe

Multiplicacin de enteros con signo

La extensin de signo requiere tamao de la palabra mayor


para el operando(s) negativo(s).
Un tamao de palabra de 8 bits se utiliza aqu por dos
operandos de 4-bits con signo, pero slo un tamao de palabra
de 7-bit es el objetivo necesario para el resultado.

Incorrecto: resultado debe ser -1)

F.A.F.L.

floresf@autonoma.edu.pe

Adicin por acarreo anticipado (I)

Si ai bici aibi ci ai bi ci aibici


ci 1 bi ci ai ci aibi

ci

ci

Gi

F.A.F.L.

aibi
Gi

ai bi

bi ai ci
Pc
i i

Pi

ai

bi

Los acarreos son representados en trminos de expresiones Gi


(generar) y Pi (propagar)

floresf@autonoma.edu.pe

Adicin por acarreo anticipado (II)

F.A.F.L.

c0

c1

G0

c2

G1 PG
1 0

c3

G2

P2G1 P2 PG
1 0

c4

G3

P3G2

P3 P2G1 P3 P2 PG
1 0

floresf@autonoma.edu.pe

Sumador por acarreo anticipado

Mximo retardo de la compuerta por la generacin de llevar a


solo 3. Los sumadores completos introducen dos ms retardos de
compuerta. La peor ruta provoca 5 retardos en la compuerta.

F.A.F.L.

floresf@autonoma.edu.pe

Aritmtica de punto flotante

Aritmtica de punto flotante se diferencia de la aritmtica de


enteros en que los exponentes deben ser manipulados, as
como las magnitudes de los operandos.
Los exponentes de los operandos debe ser igual para la suma y
la resta. Las fracciones se suman o sustraen segn proceda, y el
resultado est normalizado.
Ejemplo: Realice la operacin de punto flotante: (.101 x 23 +
.111 x 24)2
Empiece por ajustar el exponente ms pequeo para ser igual al
exponente ms grande, y ajustar en consecuencia la fraccin. As
pues, tenemos 0.101 x 23 = 0.010 x 24, perdiendo 0.001 x 23 de
la precisin en el proceso.
La cantidad resultante es (0.010 + 0.111) x 24 = 1.001 x 24 =
0.1001 x 25, y el redondeo a tres dgitos significativos, 0.100 x
25, y hemos perdido un otros 0,001 x 24 en el proceso de
redondeo.

F.A.F.L.