Download - arquitectura del computador
-
Universidad Autnoma del
Per
SESION 02: Lgica de Transferencia de
Registros
1
Ing. Francisco Asdrbal Flores LunaCIP 55473
Carrera Profesional de Ing. de Sistemas
CURSOARQUITECTURA DEL COMPUTADOR
-
Nmeros de punto flotante Base 10Nmeros 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.
flore
sf@
auto
nom
a.e
du.p
e
-
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,
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.F.A.F.L.
flore
sf@
auto
nom
a.e
du.p
e
-
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 = 0 R 3
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
F.A.F.L.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
Ejemplo de un formato de punto flotante
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.F.A.F.L.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
Formatos IEEE-754 de punto flotante
F.A.F.L.
flore
sf@
auto
nom
a.e
du.p
e
-
Ejemplos de formatos IEEE-754
ValorPatrn de Bits
Signo Exponente Fraccin
(a) +1.101 x 25 0 1000 0100 101 0000 0000 0000 0000 0000
(b) -1.01011 x 2-126 1 0000 0001 010 1100 0000 0000 0000 0000
(c) +1.0 x 2127 0 1111 1110 000 0000 0000 0000 0000 0000
(d) +0 0 0000 0000 000 0000 0000 0000 0000 0000
(e) -0 1 0000 0000 000 0000 0000 0000 0000 0000
(f) + 0 1111 1111 000 0000 0000 0000 0000 0000
(g) +2-128 0 0000 0000 010 0000 0000 0000 0000 0000
(h) +NaN 0 1111 1111 011 0111 0000 0000 0000 0000
(i) +2-128 0 011 0111 1111 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000
F.A.F.L.
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
Sustractor total Tabla de verdad y el smbolo esquemtico de un restador
con prstamo en rizado:
ai bi bori difi bori+1
0 0 0 0 0
0 0 1 1 1
0 1 0 1 1
0 1 1 0 1
1 0 0 1 0
1 0 1 0 0
1 1 0 0 0
1 1 1 1 1
F.A.F.L.
flore
sf@
auto
nom
a.e
du.p
e
-
Sustractor con prstamo en Rizado. 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.
F.A.F.L.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
Un Multiplicador serial
F.A.F.L.
flore
sf@
auto
nom
a.e
du.p
e
-
Ejemplo: Multiplicacin usando la multiplicacin serial
F.A.F.L.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
Divisor Serial
F.A.F.L.
flore
sf@
auto
nom
a.e
du.p
e
-
Eje
mplo
: (D
ivis
in U
sando u
n D
ivis
or
Seri
al)
F.A.F.L.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
Adicin por acarreo anticipado (I)
Los acarreos son representados en trminos de expresiones Gi(generar) y Pi (propagar)
y y
i i i i i ii i i i i i iS a b c a b c a b c abc
1i i i i i i ic bc a c a b
1i i i i i ic ab b a c
1i i i ic G Pc
i i iG a b i i iP a by
F.A.F.L.
flore
sf@
auto
nom
a.e
du.p
e
-
Adicin por acarreo anticipado (II)
0 0c
1 0c G
2 1 1 0c G PG
3 2 2 1 2 1 0c G PG P PG
4 3 3 2 3 2 1 3 2 1 0c G PG P P G P P PG
F.A.F.L.
flore
sf@
auto
nom
a.e
du.p
e
-
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.
flore
sf@
auto
nom
a.e
du.p
e
-
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)2Empiece 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.
flore
sf@
auto
nom
a.e
du.p
e