Organizacin del Computador 1 - PowerPoint PPT Presentation

1 / 34
About This Presentation
Title:

Organizacin del Computador 1

Description:

Los registros de un procesador tienen resoluci n finita. ... impl cito y no se almacena para formatos single-precision y double-precision. ... – PowerPoint PPT presentation

Number of Views:53
Avg rating:3.0/5.0
Slides: 35
Provided by: dcU8
Category:

less

Transcript and Presenter's Notes

Title: Organizacin del Computador 1


1
Organización del Computador 1
  • Representación binaria de Números Reales
  • Sistemas de Representación

2
Tipos de datos Números reales
  • El rango de los números reales es desde -8 hasta
    8.
  • Los registros de un procesador tienen resolución
    finita.
  • Por lo tanto solo un sub set del rango es
    representable.
  • No solo en magnitud sino en resolución

3
Representación binaria de Números Reales
  • En general podemos formalizar la representación
    de un número real expresado en los siguientes
    formatos
  • Punto Fijo
  • Con Signo
  • Con Notación Complemento a 2
  • Punto Flotante

4
Representación Punto Fijo con Signo
  • Se representan mediante una expresión del tipo
  • (anan-1 a0 . a-1a-2 a-m)2 (-1)s(an2n
    a020 a-12-1 a-22-2 a-m 2-m)
  • donde
  • s es 0 si el número es positivo y 1 si es
    negativo
  • ai ? enteros y 0 ai 1, para todo i -m, -1,
    0, 1, n
  • Distancia entre dos números consecutivos es 2-m.
  • Deja de ser un rango continuo de números para
    transformarse en un rango discreto

5
Representación Punto Fijo con Notación
Complemento a 2
  • El problema consiste en representar los números
    negativos
  • Empleamos para resolverlo el mismo criterio que
    en el complemento a 2 de enteros.
  • Para representar el número N en punto fijo con
    notación complemento a 2 se hace 2n - N

6
Truncamiento y Redondeo
  • La cantidad de dígitos disponible no alcanza para
    representar el número
  • Problema Representar un número de n dígitos
    decimales en un sistema con m dígitos decimales,
    siendo m lt n
  • Truncamiento descarta los dígitos fraccionarios
    de orden mayor a m. El error es de 1 bit.
  • Redondeo descarta los dígitos fraccionarios de
    orden mayor a m pero se suma 1 al menos
    significativo en caso que el bit inmediato
    descartado valga 1. Equivale a truncar y sumarle
    0,5.2-m . El error es de ½ bit.

7
Truncamiento y Redondeo para Notación en
complemento a 2
  • Cuando se desea hallar el complemento de un
    número w, primero se deberá
  • Calcular la aproximación a w por truncamiento o
    redondeo.
  • Calcular el complemento del número aproximado
    hallado en el paso 1
  • Ver casos para wgt0, w0, wlt0 según se trate de
    truncamiento o redondeo.

8
Números reales Representación
  • Para el caso de los números reales se trabaja en
    notación científica.
  • n f.10e
  • -725,832 -7.25832 . 102 -725,832 x 100
  • 3.14 0.314 x 101 3,14 x 100
  • 0.000001 0,1 x 10-5 1,0 x 10-6
  • 1941 0.1941 x 104 1,941 x 103
  • Para unificar la representación se recurre a la
    notación científica normalizada, en donde
  • 0 ,1 f lt 1
  • e es un entero con signo

9
Números reales Representación
  • En el sistema binario la expresión de un número
    en notación científica normalizada es
  • n f.2e
  • en donde
  • 0 ,5 f lt 1
  • e es un entero con signo

10
Representación en Punto Flotante
  • Se representan con los pares de valores (m, e),
    denotando
  • (m, e) mpe
  • m llamado mantisa, y que representa un número
    fraccionario
  • e, llamado exponente, al cual se debe elevar la
    base numérica de representación para obtener el
    valor real
  • Mantisa y exponente pueden representarse
  • con signo
  • sin signo
  • con notación complemento
  • con notación exceso m.
  • Para que las representaciones sean únicas, la
    mantisa deberá estar normalizada.

11
Punto Flotante Normalizado
12
Conversión de un número al formatopunto flotante
normalizado
  • Dado un número w que pertenece a los reales,
    planteamos el método para obtener su
    representación de punto flotante normalizado en
    base 2. Se notará con e al exponente y con f a
    la fracción.
  • Determinar el exponente. Para ello hallar el
    valor de e que satisface
  • 2e-1 w lt 2e.
  • Determinar la fracción y hallar su representación
    en base 2. Por definición,
  • f w / 2e.
  • Armar la representación del número según la
    convención que se haya acordado. Por lo general,
    se establece que el primer dígito de la
    representación representa al signo de la
    fracción, los k dígitos siguientes al exponente
    en alguna notación (con complemento o exceso m) y
    los l dígitos siguientes a la fracción.

13
Representación de la Información
  • Bit (Binary Digit) Un bit es un dígito binario.
    Como tal, puede tener 2 valores posibles, 1 y 0.
    Como los circuitos de una computadora pueden
    asumir 2 estados, los bits se utilizan para
    representar el estado de los circuitos. Y siendo
    uno de estos circuitos la unidad mínima de
    almacenamiento que posee una computadora, el bit
    será la mínima unidad de representación.
  • Byte En términos generales, un byte es un
    conjunto de bits. En el presente, se entiende
    como byte al conjunto de 8 bits.
  • Palabra Una palabra es el conjunto de bits que
    pueden ser accedidos por la CPU en un
    requerimiento de lectura/escritura.

14
Tipo de Datos que se representan con unos y ceros
  • Números enteros positivos y negativos, y
    fracciones.
  • Letras Todas las letras del alfabeto
    (mayúsculas y minúsculas), símbolos de
    puntuación, símbolos matemáticos, etc.
  • Caracteres de control caracteres para limpiar la
    pantalla, saltar una línea, etc.
  • Instrucciones de programa.
  • Direcciones de memoria.

15
Representación de números en binario
  • Representar el número decimal 40 en formato
    binario ocupando dos bytes.
  • 40 equivale a 00000000 00101000 (en
    hexadecimal 00 28) tanto en notación complemento
    como sin signo.
  • Representar el número decimal -40 en binario. En
    este caso únicamente se puede utilizar notación
    complemento
  • -40 equivale a 11111111 11011000 (en
    hexadecimal FF D8)

Complemento a 2 00001010
11111101 1 00000111 se descarta el
acarreo
Decimal 10 (-3) 7
16
Punto Flotante Formato IEEE 574
  • IEEE (Institute of Electrical and Electronics
    Engineers, Inc.)
  • El Standard IEEE 754 para punto flotante binario
    es el mas ampliamente utilizado. En este Standard
    se especifican los formatos para 32 bits, 64
    bits, y 80-bits.

17
IEEE 574 Rangos
18
Problemas que surgen del trabajo connúmeros de
Punto Flotante
  • Overflow, underflow y números no inicializados.
  • El estándar IEEE574 trata con estos problemas de
    manera explícita, y define además de los números
    normalizados, otros cuatro tipos de números, que
    se muestran a continuación.
  • Números finitos de-normalizados
  • Números finitos normalizados
  • Ceros signados
  • Infinitos signados
  • NaNs (Not a Number)
  • Números Indefinidos

19
Problemas que surgen del trabajo connúmeros de
Punto Flotante
20
Ceros signados
  • Una operación puede dar 0 o -0 en función del
    bit de signo.
  • En ambos casos el valor es el mismo. El signo de
    un resultado cero depende de la operación en sí y
    del modo de redondeo utilizado.
  • Los ceros signados ayudan a interpretar el
    intervalo aritmético en el que se ubicaría el
    resultado si la precisión aritmética fuese mayor.
  • Indican la dirección desde la cual ocurrió el
    redondeo a cero, o el signo de un infinito que
    fue invertido.

21
Números finitos normalizados
  • El rango de éstos números se compone de todos los
    valores finitos distintos de cero codificables en
    formato de números reales entre 0 e ?.
  • En el formato de punto flotante simple precisión
    estos números se componen de todos aquellos cuyos
    exponentes desplazados van de 1 a 254, (no
    desplazados van de -126 a 127).
  • Cuando se aproximan a cero, estos números no
    pueden seguir expresándose en este formato, ya
    que el rango del exponente no puede compensar el
    desplazamiento a izquierda del punto decimal.
  • Cuando se llega a un exponente cero en un número
    normalizado, se pasa al rango de-normalizado.

22
Números finitos de-normalizados
  • En general las operaciones entre números
    normalizados arrojan como resultado otro número
    normalizado.
  • Si hay underflow se pasa a trabajar en formato
    de-normalizado.
  • Ej

Bits de pérdida de precisión
23
Infinitos signados
  • ? y -?, representan los máximos números reales
    positivo y negativo representables en formato de
    unto flotante
  • La mantisa siempre es 1.000....00, y el máximo
    exponente desplazado representable (p. Ej. 255
    para precisión simple)

24
NaNs
  • Not a Number.
  • No son parte del rango de números reales.
  • QNaN Quiet NaN tiene el bit mas significativo
    fraccional en 1. Pueden propagarse por
    posteriores operaciones sin generar una
    excepción.
  • SNaN Signaled NAN. Tiene en cero el bit
    fraccional mas significativo. Resulta de una
    operación inválida de punto flotante.

25
Tipos de datos Números reales
1. El bit entero está implícito y no se almacena
para formatos single-precision y
double-precision. 2. La fracción para
codificación de SNaN debe ser distinta de cero,
con el bit mas significativo en 0.
26
ASCII
  • American Standard Code for Information
    Interchange
  • Hay 95 caracteres ASCII imprimibles, numerados
    del 32 al 126.
  • Es un código de caracteres basado en el alfabeto
    latino tal como se usa en inglés moderno y en
    otras lenguas occidentales.
  • Fue creado en 1963 por el Comité Estadounidense
    de Estándares (ASA, conocido desde 1969 como el
    Instituto Estadounidense de Estándares
    Nacionales, o ANSI) como una refundición o
    evolución de los conjuntos de códigos utilizados
    entonces en telegrafía.
  • En 1967, se incluyeron las minúsculas, y se
    redefinieron algunos códigos de control para
    formar el código conocido como US-ASCII.

27
ASCII
  • El código ASCII utiliza 7 bits para representar
    los caracteres, aunque inicialmente empleaba un
    bit adicional (bit de paridad) para detectar
    errores en la transmisión.
  • A menudo se llama incorrectamente ASCII a otros
    códigos de caracteres de 8 bits, como el estándar
    ISO-8859-1 que es una extensión que utiliza 8
    bits para proporcionar caracteres adicionales
    usados en idiomas distintos al inglés.
  • En la actualidad define códigos para 33
    caracteres no imprimibles, de los cuales la
    mayoría son caracteres de control obsoletos que
    tienen efecto sobre como se procesa el texto, más
    otros 95 caracteres imprimibles que les siguen en
    la numeración (empezando por el carácter
    espacio).
  • Casi todos los sistemas informáticos actuales
    utilizan el código ASCII o una extensión
    compatible para representar textos y para el
    control de dispositivos que manejan texto.

28
ISO 8859-1
29
Unicode
  • Estándar industrial cuyo objetivo es proporcionar
    el medio por el cual un texto en cualquier forma
    e idioma pueda ser codificado para el uso
    informático.
  • El establecimiento de Unicode ha involucrado un
    ambicioso proyecto para reemplazar los esquemas
    de codificación de caracteres existentes, muchos
    de los cuales están muy limitados en tamaño y son
    incompatibles con entornos multilingües.
  • Implementado en un número considerable de
    tecnologías recientes, que incluyen XML, Java y
    Sistemas Operativos modernos.

30
UTF-8
  • UTF-8 (8-bit Unicode Transformation Format) es
    una norma de transmisión de longitud variable
    para caracteres codificados utilizando Unicode.
  • Usa grupos de bytes para representar el estándar
    de Unicode para los alfabetos de muchos de los
    lenguajes del mundo.
  • Especialmente útil para la transmisión sobre
    sistemas de correo de 8 bits.
  • Usa 1 a 4 bytes por carácter, en función del
    símbolo Unicode. P.Ej. se necesita un solo byte
    en UTF-8 para codificar los 128 caracteres
    US_ASCII en el rango U0000 a U007F Unicode.
  • No es afectado al utilizar compresión de datos.
  • El IETF requiere que todos los protocolos de
    Internet indiquen qué codificación utilizan para
    los textos y que UTF-8 esté entre las mismas.

31
UTF-8 Ventajas
  • Puede codificar cualquier carácter.
  • Ahorra espacio respecto de UTF-16 o UTF-32 que
    utilizan muchos caracteres ASCII de 7 bits.
  • Una secuencia de bytes para un carácter jamás
    será parte de una secuencia más larga de otro
    carácter como lo hacían viejas codificaciones.
  • El primer byte de una secuencia multi-byte es
    suficiente para determinar la longitud de una
    secuencia multi-byte. Esto hace muy simple
    extraer una subcadena de una cadena dada sin
    elaborar un análisis exhaustivo.

32
UTF-8 Ventajas
  • Está diseñado para que los bytes codificados
    nunca tomen alguno de los valores de los
    caracteres especiales de ASCII, previniendo
    problemas de compatibilidad con librerías y
    sistemas operativos legacy como la ANSI C.
  • Las cadenas en UTF-8 pueden ser ordenadas usando
    rutinas de ordenamiento estándar orientadas a
    byte.
  • UTF-8 es el valor predeterminado para el formato
    XML.

33
UTF-8 desventajas
  • Es de longitud variable eso significa que
    diferentes caracteres toman secuencias de
    diferentes longitudes para codificar. La agudeza
    de esto podría ser disminuida, sin embargo,
    creando una interfaz abstracta para trabajar con
    cadenas UTF-8 y haciéndolo transparente al
    usuario.
  • Un analizador de UTF-8 mal escrito podría aceptar
    un número de diferentes representaciones
    pseudo-UTF-8 y convertirlas en la misma salida
    Unicode.
  • Los caracteres ideográficos usan 3 bytes en
    UTF-8, pero sólo 2 en UTF-16. Así, los textos
    chinos/japoneses/coreanos usarán más espacio
    cuando sean representados en UTF-8.

34
UTF-16
  • E un código de caracteres que proporciona una
    forma de representar caracteres Unicode e ISO/IEC
    10646 como una serie de palabras de 16 bits y 24
    bits susceptibles de ser almacenados o
    transmitidos a través de redes de datos.
  • UTF-16 se halla oficialmente definido en el Anexo
    Q de la norma ISO/IEC 10646-1. También está
    descrita en el estándar unicode (versión 3.0 u
    superior), al igual que en la RFC 2781 de la IETF
  • UTF-16 representa un carácter que ha sido
    asignado dentro del conjunto de los 65536 puntos
    del código unicode o ISO/IEC 10646 como un valor
    de código único equivalente al punto de código
    del carácter por ejemplo, 0 para 0, FFFD
    hexadecimal para FFFD.
Write a Comment
User Comments (0)
About PowerShow.com