arquitectura del computador

37
Universidad Autónoma del Perú SESION 02: Lógica de Transferencia de Registros 1 Ing. Francisco Asdrúbal Flores Luna CIP 55473 Carrera Profesional de Ing. de Sistemas CURSO ARQUITECTURA DEL COMPUTADOR [email protected] F.A.F.L.

Upload: cristian-bustamante-carrasco

Post on 18-Nov-2015

4 views

Category:

Documents


2 download

DESCRIPTION

computadoras

TRANSCRIPT

  • 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

    [email protected].

  • 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