Representacin de la Informacin en los Computadores 1

  • Slides: 77
Download presentation
Representación de la Información. . . en los Computadores 1

Representación de la Información. . . en los Computadores 1

Información e Informática n n n Un computador es una máquina que procesa información.

Información e Informática n n n Un computador es una máquina que procesa información. La ejecución de un programa implica el tratamiento de los datos. Para que el computador ejecute un programa es necesario darles dos tipos de información: n n n las instrucciones que forman el programa y los datos con los que debe operar ese programa. Los aspectos más importantes de la Informática relacionados con la información son: n n cómo <representarla> y cómo <materializarla> o <registrarla> físicamente. 2

Cómo se da la información a un computador? n Se la da en la

Cómo se da la información a un computador? n Se la da en la forma usual escrita que utilizan los seres humanos; n n con ayuda de un alfabeto o conjunto de símbolos, denominados caracteres. Categorías de los caracteres: n n Caracteres alfabéticos: son los mayúsculas y minúsculas del abecedario inglés: A, B, C, D, E, …, X, Y, Z, a, b, c, d, …, x, y, z Caracteres numéricos: están constituidos por las diez cifras decimales: Ø, 1, 2, 3, 4, 5, 6, 7, 8, 9 n El cero suele marcarse con una raya inclinada (ø) para evitar posibles confusiones con la O mayúscula. 3

Cont… n Caracteres especiales: son los símbolos no incluidos en los grupos anteriores, entre

Cont… n Caracteres especiales: son los símbolos no incluidos en los grupos anteriores, entre otros los siguientes: ) ( , * / ; : Ñ ñ = ! ? . ‘’ & > # < { Ç } SP n n Carácter de control: representan órdenes de control, como el carácter indicador de fin de línea o el carácter indicador de sincronización de una transmisión de que se emita un pitido en un terminal, etc. n n Con SP representamos el carácter o espacio en blanco, tal como el que separa dos palabras. Muchos de estos son generados e insertados por el propio computador. Caracteres Gráficos: son símbolos o módulos con los que se pueden representar figuras (o iconos) elementales. 4

Cont… n n Toda comunicación con un computador convencional se 101 realiza según los

Cont… n n Toda comunicación con un computador convencional se 101 realiza según los caracteres que admitan sus dispositivos 101 de E / S. Toda instrucción o dato se representará por un conjunto 0110 de caracteres tomados del alfabeto definido en el 010 sistema a utilizar. El diseño de un sistema informático resulta mas fácil, su 01 realización menos compleja y su funcionamiento muy fiable, si se utilizan solo dos valores o estados posibles. 0 Estos valores conceptualmente se representan por 0101 cero (0) y uno (1) etc. (BIT) apagada y encendida 0 voltios y 3. 5 voltios 0 0110 01 5

Codificación de la Información n n Codificación es una transformación que representa los elementos

Codificación de la Información n n Codificación es una transformación que representa los elementos de un conjunto mediante los de otro, de forma tal que a cada elemento del primer conjunto le corresponda un elemento distinto del segundo. Ejemplo: n n n código de provincia en las matrículas de los coches; código de enfermedades definido por la Organización Mundial de la Salud (OMS) número de cedula de identidad Los códigos se permiten comprimir y estructurar la información En el interior de los computadores la información se almacena y se transfiere de un sitio a otro según un código que utiliza sólo dos valores (un código binario) representados por 0 y 1. 6

Cont… n Codificación y Decodificación n Al tener que <traducir> toda la información suministrada

Cont… n Codificación y Decodificación n Al tener que <traducir> toda la información suministrada al computador a ceros y unos, es necesario establecer una correspondencia entre el conjunto de todos los caracteres = { A, B, C, D, …, Z, a, b, …, z, 0, 1, 2, 3, …, 9, /, +, (, ), … } n y el conjunto binario = { 0, 1 } n n Estos códigos de trasformación se denominan códigos de Entrada / Salida (E/S) o códigos externos. n Las operaciones aritméticas con datos numéricos se suelen realizar en una representación más adecuada para este objetivo que la obtenida con el código de E/S. 7

La unidad más elemental de información… n n …es un valor binario, conocido como

La unidad más elemental de información… n n …es un valor binario, conocido como BIT. El origen de este término es inglés: BIT = Binary y digi. T n n n Un bit es una posición o variable que toma el valor 0 o 1. Es la capacidad mínima de almacenamiento de información en el interior de un computador El bit es la unidad de información mínima 8

Información – caracteres – BIT … n A cada caracter le corresponde cierto número

Información – caracteres – BIT … n A cada caracter le corresponde cierto número de bits. Byte : número de bits necesarios para almacenar un caracter n n Byte se utiliza como sinónimo de 8 bits u octeto. La capacidad de almacenamiento (computador, soporte de información) se mide en bytes. Byte es una unidad relativamente pequeña Se utiliza múltiplos: n n n n 1 Kilobyte 1 Megabyte 1 Gigabyte 1 Terabyte 1 Pentabyte 1 Exabyte 1 Zetabyte? 1 Yottabyte? = 1 KB = 1 MB = 1 GB = 1 TB = 1 PB = 1 EB = 210 bytes = 1024 bytes =210 bytes = 210 Kb = 1048576 bytes =220 bytes = 210 Mb = 1073741824 bytes =230 bytes = 210 Gb = 1099511627776 bytes =240 bytes = 210 Tb = 11258999906842624 bytes =250 bytes. = 210 Pb = 11258999906842624 bytes =260 bytes. 9

Cont. . . DATO: Característica de una información expresada en forma adecuada para su

Cont. . . DATO: Característica de una información expresada en forma adecuada para su tratamiento. n Representación de los datos (valores): n n n Necesidad de convertir los valores analógicos a discretos. n n n Valores analógicos. Valores discretos o digitales. Sistema digital: Sistema de N estados estables Dígito: Variable capaz de asumir un estado. Los dígitos se agrupan para representar más estados. 10

Cont. . . n n Código: Ley de correspondencia entre valores de información y

Cont. . . n n Código: Ley de correspondencia entre valores de información y combinaciones de dígitos de un sistema digital utilizadas para representarlos. Codificación: Información -> Código azul ----> 0 verde ----> 1 rojo ----> 2 n Decodificación: Código -> Información azul <---- 0 verde <---- 1 rojo <---- 2 n ó azul ----> 100 verde ----> 101 rojo ----> 111 ó azul <---- 100 verde <---- 101 rojo <---- 111 Código binario: Cuando el sistema digital utilizado tiene sólo 2 estados (0, 1). 11

Sistemas de numeración usuales en informática n n n Los computadores suelen efectuar las

Sistemas de numeración usuales en informática n n n Los computadores suelen efectuar las operaciones aritméticas utilizando una representación para los datos numéricos basada en el sistema de numeración base dos (sistema binario). También se utilizan los sistemas de numeración, preferentemente el octal y hexadecimal, para obtener códigos intermedios. Un número expresado en uno de estos dos códigos puede transformarse directa y fácilmente a binario y viceversa. n Por lo que a veces se utilizan como paso intermedio en las transformaciones de decimal a binario y viceversa. 12

Representación posicional de los números n n Un sistema de numeración en base b

Representación posicional de los números n n Un sistema de numeración en base b utiliza para representar los números un alfabeto compuesto por b símbolos o cifras. Todo número se expresa por un conjunto de cifras, contribuyendo cada una e ellas con un valor que depende de: a) la cifra en sí, y b) la posición que ocupe dentro del número. n En el sistema de numeración decimal (sistema en base 10): n b = 10 y el alfabeto está constituido por diez símbolos o cifras decimales: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} 13

Cont. . . n por ejemplo, el número 3278. 52 puede obtenerse como suma

Cont. . . n por ejemplo, el número 3278. 52 puede obtenerse como suma de: n se verifica que: 3278. 52 = 3*103 + 2*102 + 7*101 + 8*100 + 5*10 -1 + 2*10 -2 14

Cont. . . Representación de un número en una base b: Forma abreviada: N

Cont. . . Representación de un número en una base b: Forma abreviada: N = … n 4 n 3 n 2 n 1 n 0. n-1 n-2 n-3 … Valor: N = … n 4 * b 4 + n 3 * b 3 + n 2 * b 2 + n 1 * b 1 + n 0 * b 0 + n-1 * b-1 … n Para representar un número: n n Resulta más cómodo que los símbolos (cifras) del alfabeto o la base de numeración sean los menos posibles, pero , Cuanto menos es la base, mayor es el número de cifras que se necesitan para representar una cantidad dada. 15

Sistemas de Numeración n Binario Octal Hexadecimal 16

Sistemas de Numeración n Binario Octal Hexadecimal 16

Sistema de numeración binario n n La base es 2 (b=2) sólo se necesitan

Sistema de numeración binario n n La base es 2 (b=2) sólo se necesitan dos símbolos : { 0, 1 } 17

Conversión de Decimal a Binario n Se aplica el método de las “divisiones y

Conversión de Decimal a Binario n Se aplica el método de las “divisiones y multiplicaciones ” sucesivas con la base como divisor y multiplicador (b = 2). Ejemplo: 26. 1875 )10 = 11010. 0011 )2 Para la parte entera: n Para la parte fraccionaria: n n 18

Conversión de Binario a Decimal n n Se desarrolla la representación binaria (con b=2)

Conversión de Binario a Decimal n n Se desarrolla la representación binaria (con b=2) y se opera el polinomio en decimal. Ejemplos: 110100)2 = 1· 25 + 1· 2 4 + 0· 2 3 + 1· 2 2 + 0· 2 1 + 0· 2 0 = 52 )10 10100. 001)2 = 1· 2 4 + 0· 23 + 1· 22 + 0· 21 + 0· 20 + 0· 2 - 1 + 0· 2 - 2 +1· 2 -3 = 20. 125 )10 n Realmente basta con sumar los pesos (2 i ) de las posiciones (i) en las que hay un 1. 19

Operaciones aritméticas con variables binarias n Las operaciones aritméticas básicas son la suma, resta,

Operaciones aritméticas con variables binarias n Las operaciones aritméticas básicas son la suma, resta, multiplicación y división. 20

Ejemplos: Efectuar las siguientes operaciones aritméticas binarias: 21

Ejemplos: Efectuar las siguientes operaciones aritméticas binarias: 21

Representación en complementos n Para representar un número negativo se puede utilizar n n

Representación en complementos n Para representar un número negativo se puede utilizar n n Complemento a la base – 1 Las sumas y restas quedan reducidas a sumas. Este sistema de representación de sumo interés ya que reduce la complejidad de la unidad aritmético lógica (no son necesarios circuitos específicos para restar). 22

Complemento a la base menos 1 El complemento a la base menos uno de

Complemento a la base menos 1 El complemento a la base menos uno de un número, N, es el número que resulta de restar cada una de las cifras de N a la base menos uno del sistema de numeración que este utilizando. Podemos restar dos números sumando al minuendo el complemento a la base menos uno del sustraendo. La cifra que se arrastra del resultado se descarta y se suma al resultado así obtenido. 23

Complemento a la base menos 1 En base 10 (Complemento a 9) n Complemento

Complemento a la base menos 1 En base 10 (Complemento a 9) n Complemento a la base menos uno (a nueve) de 63 es 36; n Si queremos resta 63 a 77 24

Cont… n Complemento a nueve de 16 es 83; n Queremos hacer 1100 -0016:

Cont… n Complemento a nueve de 16 es 83; n Queremos hacer 1100 -0016: 25

En base 2 (Complemento a 1) n n Complemento a la base menos uno

En base 2 (Complemento a 1) n n Complemento a la base menos uno (a uno) del número 10010 es: 11111 -10010 01101 Complemento a uno de 101010 es: 111111 -0101010 26

Cont… n Queremos Restar 1000111 – 10010: De manera normal 1000111 - 0010010 0110101

Cont… n Queremos Restar 1000111 – 10010: De manera normal 1000111 - 0010010 0110101 n Con complemento a 1 (de 0010010 ): 1000111 + 1101101 Complemento a 1 de 0010010 (1)0110100 + 0000001 0110101 27

Cont… Fácilmente se observa que para transformar un número binario, N, a complemento a

Cont… Fácilmente se observa que para transformar un número binario, N, a complemento a 1 basta con cambiar en N los unos por los ceros y los ceros por los unos. 28

Complemento a la base El complemento a la base de un número, N, es

Complemento a la base El complemento a la base de un número, N, es el número que resulta de restar cada una de las cifras del número N a la base menos uno del sistema que se esté utilizando y, posteriormente, sumar uno a la diferencia obtenida. Se pueden restar dos números sumando al minuendo el complemento a la base del sustraendo y despreciando, en su caso, el acarreo del resultado. 29

Complemento a la base En base 10 (Complemento a 10) n Complemento a la

Complemento a la base En base 10 (Complemento a 10) n Complemento a la base (a diez) de 63 es 37; n Si queremos resta 63 a 77 30

En base 2 (Complemento a 2) n Complemento a la base (a dos) del

En base 2 (Complemento a 2) n Complemento a la base (a dos) del número 10010 es: 11111 -10010 01101 + 1 01110 n Complemento a dos de 101010 es: 111111 -0101010 + 1 101011 31

Cont… n Queremos Restar 1000111 – 10010: De manera normal 1000111 - 0010010 0110101

Cont… n Queremos Restar 1000111 – 10010: De manera normal 1000111 - 0010010 0110101 n Con complemento a 2 (de 0010010 ): 1000111 + 1101110 Complemento a 2 de 0010010 (1)0110101 32

Cont… Observamos que para transformar un numero binario, N, a complemento a 2 basta

Cont… Observamos que para transformar un numero binario, N, a complemento a 2 basta con cambiar los 0 por 1 y los 1 por 0 de N y sumar 1 al resultado. Esto puede también ser visto como: Recorrer el número desde el bit menos significativo hasta el mas significativo y dejar los bits iguales hasta el primer uno y luego cambiar los ceros por unos y los unos por ceros 33

Sistema de numeración octal n n La base es 8 El conjunto de símbolos

Sistema de numeración octal n n La base es 8 El conjunto de símbolos es: { 0, 1, 2, 3, 4, 5, 6, 7 } Conversión de octal a decimal n Se desarrolla el polinomio con b=8 y se opera en decimal. Conversión de decimal a octal n Aplicar el método de “divisiones y productos” con divisor y multiplicador 8. Conversión “rápida” de binario a octal n Agrupar cifras binarias de 3 en 3 y transformar con la tabla 1. Conversión “rápida” de octal a binario n Convertir cada cifra octal mediante la tabla 34

Cont. . . n Ejemplo: n Haciendo uso de la tabla convertir 10001101100. 11010(2

Cont. . . n Ejemplo: n Haciendo uso de la tabla convertir 10001101100. 11010(2 = N (8 10|001|100. 110|10 )2 = 2154. 64 )8 n Ejemplo: n Haciendo uso de la tabla convertir 537. 24 )8 = N )2 537. 24 )8 = 101|011|111. 010|100 )2 35

Sistema de numeración hexadecimal n n La base es 16 El conjunto de símbolos

Sistema de numeración hexadecimal n n La base es 16 El conjunto de símbolos es: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F} 36

Cont. . . Conversión de Hexadecimal a decimal n Se desarrolla el polinomio con

Cont. . . Conversión de Hexadecimal a decimal n Se desarrolla el polinomio con b=16 y se opera en decimal. Conversión de Decimal a hexadecimal n Aplicar el método de “divisiones y productos” con divisor y multiplicador 16. Conversión “rápida” de binario a hexadecimal n Agrupar cifras binarias de 4 en 4 y transformar con la tabla n Ejemplo: 0010|0101|1111. 1011|1010 (2 = 25 DF. BA (16 Conversión “rápida” de hexadecimal a binario n Convertir cada cifra hexadecimal mediante la tabla n Ejemplo: 1 ABC. C 4 (16 = 0001|1010|1011|1100|0100 (2 37

Resumen de cambios de base 38

Resumen de cambios de base 38

Ejercicios en clases… n Hacer las operaciones en binario: n n n n 101011101)2

Ejercicios en clases… n Hacer las operaciones en binario: n n n n 101011101)2 + 101001010)2 = N)8 1100101011)2 + 100101101)2 = N)10 101011101)2 - 10001010)2 = N)16 110001011)2 – 10101101)2 = N)16 10101)2 * 2)10 = N)2 1101. 1010)2 * 25)10 = N)10 1010100)2 / 2)10 = N)8 10101. 101)2 / 101)2 = N)2 39

Representación de datos Numéricos n Para la representación de los datos numéricos se debe

Representación de datos Numéricos n Para la representación de los datos numéricos se debe tener en cuenta que las operaciones de la ALU están sujetas a las siguientes restricciones: n n n Los registros son de tamaño fijo. Puede existir desbordamiento. Presentan problemas con los números negativos. Es necesario, por ello, introducir nuevas formas de numeración basadas, por supuesto, en la representación binaria. Al conjunto de estas representaciones y su funcionamiento se le denomina aritmética binaria. En aritmética binaria debemos distinguir: n n Representación para números enteros Representación de números reales. 40

Cont… n Números de precision finita n n En la mayoría de las computadoras,

Cont… n Números de precision finita n n En la mayoría de las computadoras, la cantidad de memoria disponible para guardar números se fija en el momento de su diseño. Con un poco de esfuerzo, el programador puede llegar a representar números 2 o 3 veces más grandes que este tamaño prefijado Al hacerlo no termina de cambiar la naturaleza del problema: la cantidad de dígitos disponibles para representar un número siempre será fija. Llamamos a estos números de precisión finita. 41

Datos de tipo entero n n n Es una representación del conjunto de números

Datos de tipo entero n n n Es una representación del conjunto de números enteros. Es necesario utilizar un espacio finito y fijo para cada dato. El número se debe representar en binario y almacenarlo con un número fijo de bits. El número de datos distintos que se pueden generar es 2 n, donde n es el número de bits que se utiliza en la representación. Por tanto, si se modifica el número de bits, se obtienen distintos tipos enteros. Cualquier operación con datos de tipo entero es exacta salvo que se produzcan desbordamientos. 42

Datos de tipo entero n Enteros sin signo n n No hace falta codificación,

Datos de tipo entero n Enteros sin signo n n No hace falta codificación, todos los bits del dato representan el valor del número expresado en binario natural (sistema de numeración base 2). Enteros en signo y magnitud n n n Se basan en tener 1 bit para el signo, y el resto de la cifra (n-1 bits) para codificar el número entero a representar. El signo se representa con el bit mas significativo del dato Se distingue entre números: n n n Positivos: Se almacenan con el bit de signo puesto a 0 Negativos: Se almacenan con el bit de signo puesto a 1 Permiten almacenar números desde n n n -2 (n-1), hasta + (2(n-1)) - 1 Bytes: -128 a +127 Words (de 2 Bytes): -32768 a 32767 43

Cont… n Enteros en complemento a 1 ó 2 n n El signo se

Cont… n Enteros en complemento a 1 ó 2 n n El signo se representa de la misma forma que en el caso de signo y magnitud El resto de los bits representan: n n n Representación con exceso o sesgada n n Si el número es positivo: el valor absoluto del número en binario natural Si es negativo: su complemento a 1 ó 2 Se le suma al número N un sesgo S, de forma tal que el número resultante siempre es positivo, no siendo necesario reservar un bit de signo. Representación con dígitos decimales codificados en binario (BCD) n n n En ocasiones, los datos de tipo entero se representan internamente codificando aisladamente cada dígito decimal con cuatro dígitos binarios De esta froma, en un byte se pueden representar 2 dígitos decimales En la representación BCD de datos con signo se suelen utilizar 4 bits par representar al signo, por ejemplo 0000 para positivo y 1001 para negativo

Datos de tipo real n n n Es una representación del conjunto de números

Datos de tipo real n n n Es una representación del conjunto de números reales Cuando se opera con números muy grandes se suele utilizar la notación exponencial, también llamada notación científica o notación en como flotante. Todo número N puede ser representado en la forma: N=M. BE n n Donde M es la mantisa, B es la base 10 y E el exponente Los microprocesadores actuales disponen internamente de un procesador de coma flotante (Float Point Unit, FPU) que contiene circuitos aritméticos para operar con este tipo de datos. No permite el almacenamiento de números muy grandes o muy pequeños, lo que conlleva a que se produzcan desbordamientos y agotamientos. 45

Datos de tipo real n Coma fija: La posición está fijada de antemano y

Datos de tipo real n Coma fija: La posición está fijada de antemano y es invariante. n n Cada número se representa por n bits para la parte entera y m bits para la parte fraccionaria. Nos ahorramos el punto n n n Se puede producir un error de truncamiento. Un mismo número en punto fijo puede representar a muchos números reales. n n n Dependerá de n y de m 1. 25 (m=2), 1. 256 (m=2), 1. 2589 (m=2), 1. 2596 (m=2), etc El MSB es el signo No todos los números reales pueden representarse con este formato 46

Cont… n Coma flotante: La posición de la coma es variable dependiendo del valor

Cont… n Coma flotante: La posición de la coma es variable dependiendo del valor del exponente. Es de la forma: m 10 exp ( En decimal) m 2 exp(En binario) n n En decimal en la notación científica podemos escribir: 1. 9 x 109 o en forma corta 1. 9 E 9 Tiene dos campos uno contiene el valor de la mantisa y el otro de valor del exponente. El bit más significativo de la mantisa contiene el signo. Existen tres formatos: n n n Signo. N Signo. M Signo. E Mantisa Exponente → Directo Mantisa → Comparación rápida Signo. N Mantisa→ Precisión ampliada 47

Cont… n Como un valor puede tener más de una representación, se normaliza la

Cont… n Como un valor puede tener más de una representación, se normaliza la representación haciendo que el primer bit significativo de la mantisa ocupe la posición inmediatamente a continuación del signo. n Trabajando mantisas normalizadas siempre el primer bit de la mantisa es el complemento del bit de signo, por lo que no es necesario incluirlo en la codificación. n El bit que no se incluye recibe el nombre de bit implícito. n Las características de los sistemas de representación en coma flotante son: n n El exponente se representa en exceso a 2 n-1, siendo n el número de bits del exponente. La mantisa es un número real normalizado, sin parte entera. n n Su representación puede ser en cualquier sistema: módulo y signo, Complemento a 1 o Complemento a 2. La base de exponenciación es una potencia de dos. 48

Cont… n Representación en simple precisión: Palabra de 32 bits. n Signo Exponente 31

Cont… n Representación en simple precisión: Palabra de 32 bits. n Signo Exponente 31 30 23 1 bit 8 bits n Un ejemplo en C es el float n n Mantisa 22 0 23 bits 49

Cont… n Representación en doble precisión: Palabra de 64 bits. n Signo Exponente 63

Cont… n Representación en doble precisión: Palabra de 64 bits. n Signo Exponente 63 62 52 1 bit 11 bits n Un ejemplo en C es el Double n n Mantisa 51 0 52 bits 50

Cont… n Ejemplo 1: n -9. 2510 Sean m =16, n. E = 8

Cont… n Ejemplo 1: n -9. 2510 Sean m =16, n. E = 8 ( n. M = 7) , Pasamos a binario 9. 2510 = 1001. 012 Normalizamos 1. 00101 x 23 Resultado de la Normalización 1001. 012 = 0010100 Exponente (exceso a 27 -1) 310 = (127 +3)2=10000010 1 1000 0010 100 SM E M m: es el número de bit con que se representa el número n. E : es el número de bits que se usan para representar el exponent n. M : es el número de bits que se usan para representar el 51

Cont… 52

Cont… 52

Principales tipos de datos aritméticos utilizables en el lenguaje de programación C (compilador Borland

Principales tipos de datos aritméticos utilizables en el lenguaje de programación C (compilador Borland C++ para PC) 53

Representación de textos Códigos de Entrada/Salida n Asocian a cada símbolo una determinada combinación

Representación de textos Códigos de Entrada/Salida n Asocian a cada símbolo una determinada combinación de bits. a = {0, 1, 2, . . . , 8, 9, A, B, . . . , Y, Z, a, b, . . . , y, z, *, ", /, . . . } b = {0, 1}n n n Con n bits podemos codificar m=2 n símbolos distintos Para codificar m símbolos distintos se necesitan n bits, n ≥ log 2 m = 3. 32 log (m) 54

Ejemplo: n n Para codificar las cifras decimales {0, 1, 2, 3, 4, 5,

Ejemplo: n n Para codificar las cifras decimales {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} se necesitarán : n ≥ 3. 3221 log(m) = 3. 322 bits es decir, 4 bits (para que se cumpla la relación) Por lo menos se necesitan 4 bits, pero pueden hacerse codificaciones con más bits de los necesarios. Tabla 2 Con 4 bits no se usan 24 – 10 = 6 combinaciones, y con 5 bits 25 – 10 = 22 combinaciones. 55

Cont… Tabla 2 Alfabeto 0 1 2 3 4 5 6 7 8 9

Cont… Tabla 2 Alfabeto 0 1 2 3 4 5 6 7 8 9 Código I 0000 1000 0100 1100 0010 1010 0110 1110 0001 1001 Código II 00000 10001 01001 11000 00101 10100 01100 11101 00011 10010 56

Ejemplos de Códigos de E/S n Código ASCII n n El código ASCII se

Ejemplos de Códigos de E/S n Código ASCII n n El código ASCII se utiliza para representar caracteres. Formado por 8 bits (cada carácter se expresa por un número entre 0 y 255) Es un código estándar, independiente del lenguaje y del ordenador Podemos distinguir dos grupos: n Los 128 primeros caracteres se denominan código ASCII estándar n n Los 128 restantes se denominan código ASCII ampliado n n Este código asocia un numero a caracteres que no aparecen en la maquina de escribir y que son muy utilizados en el ordenador tales como caracteres gráficos u operadores matemáticos. Código EBCDIC n Extended Binary Coded Decimal Interchange Code n n Representan los caracteres que aparecen en una maquina de escribir convencional Código Ampliado de Caracteres Decimales Codificados en Binario para Intercambio de Información Es un sistema de codificación de caracteres alfanuméricos. Cada carácter queda representado por un grupo de 8 bits. Código Unicode n n Es de 16 bits, por lo que puede representar 65536 caracteres. Es una extensión del ASCII para poder expresar distintos juegos de caracteres (latino, griego, árabe, kanji, cirílico, etc). 57

Cont… 58

Cont… 58

Cont… 59

Cont… 59

Cont… 60

Cont… 60

61

61

CÓDIGO EBCDIC 62

CÓDIGO EBCDIC 62

Esquema de asignación de códigos en Unicode 63

Esquema de asignación de códigos en Unicode 63

Representación de Sonidos n Grabación de una señal de sonido: n n a) b)

Representación de Sonidos n Grabación de una señal de sonido: n n a) b) Se capta por medio de un micrófono que produce una señal analógica (señal que puede tomar cualquier valor dentro de un determinado intervalo continuo). La señal analógica se amplificada para encajarla dentro de dos valores límites, p. e. entre – 5 voltios y +5 voltios. Señal analógica captada por un micrófono al pronunciar la palabra “casa”; Tramo de muestras comprendido entre 0, 184 a 0, 186 segundos; 64

Cont… n Los valores obtenidos en la conversión (muestras) se almacenan en posiciones consecutivas

Cont… n Los valores obtenidos en la conversión (muestras) se almacenan en posiciones consecutivas c) Valores de las muestras obtenidos por un conversor A/D y que representan a la señal de voz. n Principales parámetros de grabación: n n n Frecuencia de muestreo (suficiente para no perder la forma de la señal original) Número de bits por muestra (precisión) La capacidad necesaria para almacenar una señal de audio depende de los dos parámetros anteriores: n 1 minuto de audio estéreo con calidad CD, necesita 10 MB (sin compresión de datos) 65

Representación de Imágenes n n n Las imágenes se adquieren por medio de periféricos

Representación de Imágenes n n n Las imágenes se adquieren por medio de periféricos tales como escáneres, cámaras de video o cámaras fotográficas. Una imagen se representa por patrones de bits, generados por el periférico correspondiente. Formas básicas de representación: n n Mapa de bits Mapa de vectores 66

Imágenes de Mapas de Bits Estructura de una imagen con resolución de 640 x

Imágenes de Mapas de Bits Estructura de una imagen con resolución de 640 x 580 elementos. n n n La imagen se considera dividida en una fina retícula de celdas o elementos de imagen (pixels). A cada elemento de imagen (e. i. ) se le asocia un valor (atributo) que se corresponde con su nivel de gris (b/n) o color, medio en la celda. La resolución es n n (nº e. i. horizontales x nº e. i. verticales). Se memoriza, almacenando ordenada y sucesivamente los atributos de los distintos elementos de imagen. 67

Características de algunas formas de imágenes digitalizadas n La calidad de la imagen depende

Características de algunas formas de imágenes digitalizadas n La calidad de la imagen depende de n n n La resolución y Codificación del atributo (número de bits) La capacidad depende de dichos parámetros: n n Ejemplo: imagen de 16 niveles de grises (b/n) y con resolución de 640 x 350: 110 Kbytes Ejemplo: imagen con resolución XGA con 256 niveles para cada color básico: 2, 25 MBytes 68

Imágenes de Mapas de Vectores n n n Se descompone la imagen en una

Imágenes de Mapas de Vectores n n n Se descompone la imagen en una colección de objetos tales como líneas, polígonos y textos con sus respectivos atributos o detalles (grosor, color, etc. ) modelables por medio de vectores y ecuaciones matemáticas que determinan tanto su forma como su posición dentro de la imagen. Para visualiza una imagen, un programa evalúa las ecuaciones y escala los vectores generando la imagen concreta a ver. Características: n n Sólo es adecuada para gráficos de tipo geométrico (no imágenes reales) Ocupan mucho menos espacio que los mapas de bits. 69

Compresión De Datos n Diversas aplicaciones (multimedia, etc. ) requieren utilizar archivos de gran

Compresión De Datos n Diversas aplicaciones (multimedia, etc. ) requieren utilizar archivos de gran capacidad. n n n Volumen requerido para su almacenamiento en disco muy elevado el tiempo de transmisión del archivo por una red resulta excesivo Solución: transformación denominada compresión de datos. n n El archivo, antes de ser almacenado o transmitido se comprime mediante un algoritmo de compresión, y cuando se recupera para procesarlo o visualizarlo se aplica la técnica inversa para descomprimirlo. n Técnicas: n n n n n Codificación por longitud de secuencias Codificación relativa o incremental Codificación dependiente de la frecuencia Codificación con diccionario adaptativo Codificación Lempel-Ziv Compresión GIF (imágenes) Compresión JPEG (imágenes) Compresión MP 3 (sonidos) 70

Detección de errores en la Información Codificada n n n Cuantas menos codificaciones se

Detección de errores en la Información Codificada n n n Cuantas menos codificaciones se desperdicien el código es más eficiente. La eficiencia de un código ( ) se define como el cociente entre el número de símbolos que se representan realmente, m, dividido para el número de símbolos que en total pueden representarse. Con códigos binarios en que m = 2 n, se tiene: = m/ m’ = m/2 n , con 0< < 1 Cuanto más eficiente sea el código, entonces será mayor. n 71

Ejemplo 3. 17 n Supongamos que usamos el código ASCII, para representar 95 símbolos.

Ejemplo 3. 17 n Supongamos que usamos el código ASCII, para representar 95 símbolos. La eficiencia del código será: sin bit de paridad: = m/ m’ = 95/2 = 0. 742 7 con un bit adicional de paridad: = m/ m’ = 95/2 = 0. 371 8 72

Cont… n Un código poco eficiente se dice que es redundante: R=(1 n (Observamos

Cont… n Un código poco eficiente se dice que es redundante: R=(1 n (Observamos que se da en %) n Ejemplo 3. 18 n n ) · 100% En los casos considerados en el ejemplo anterior, las redundancias son: R = ( 1 – 0. 742 ) · 100% = 28. 8% R = ( 1 – 0. 371 ) · 100% = 62. 9% En ocasiones, las redundancias se introducen deliberadamente para detectar posibles errores de transmisión o grabación de información. 73

Cont… n Por ejemplo: n n necesitamos transmitir 8 símbolos {A, B, C, D,

Cont… n Por ejemplo: n n necesitamos transmitir 8 símbolos {A, B, C, D, E, F, G, H} Un código sin redundancia: n = 3 bits Si por error varía uno de los bits obtenemos otro símbolo del alfabeto. Alfabeto A B C D E F G H Código I 000 001 010 011 100 101 110 111 Código II 0000 0001 0010 0011 0100 0101 0110 0111 Esto considerando por sí mismo ( aisladamente) no puede ser detectado como erróneo. Pero, si usamos un código redundante, como el código II existirían algunas posibilidades de detectar errores. 74

Cont… n n n Las redundancias se introducen de acuerdo con algún algoritmo predeterminado.

Cont… n n n Las redundancias se introducen de acuerdo con algún algoritmo predeterminado. Los códigos pueden ser verificados por circuitos del computador o periféricos especializados en este objetivo. Uno de estos algoritmos añade al código inicial de cada carácter un nuevo bit llamado bit de paridad. 75

Bit de Paridad n n Existen dos criterios para introducir este bit: Bit de

Bit de Paridad n n Existen dos criterios para introducir este bit: Bit de Paridad, Criterio Par: n n Bit de Paridad, Criterio Impar: n n Se añade un bit ( 0 o 1 ) de forma que el número total de unos del código que resulte sea par. Se añade un bit ( 0 o 1 ) de forma que el número total de unos del código que resulte sea impar. El bit de paridad se introduce antes de transmitir o grabar la información ( en la memoria principal, cinta o disco magnético). 76

Ejemplo: n Código inicial Código con bit de paridad (criterio par) (criterio impar) 100

Ejemplo: n Código inicial Código con bit de paridad (criterio par) (criterio impar) 100 0001 0100 0001 101 1011 1101 1011 0101 101 0000 0101 0000 110 1000 1110 1000 0110 1000 bit de paridad n n n Por ruido o interferencia en la transmisión puede intercambiarse un bit (de 0 a 1 o de 1 a 0). Si en el receptor se comprueba la paridad se detecta el error ya que el número de unos deja de ser par o impar (según el criterio). De esta manera se podría producir automáticamente la retransmisión del carácter erróneo. Si se produjese el cambio de dos bits distintos, no se detectaría el error de paridad. n Esto es poco probable que ocurra. 77