IES Juan de la Cierva. Vélez Málaga. Curso 2005-2006. Informática. 1Bach.Tecnológico. CONCEPTOS BÁSICOS DE INFORMÁTICA. REPRESENTACIÓN DE LA INFORMACIÓN. INDICE. TÉRMINOS BÁSICOS DE LA INFORMÁTICA. REPRESENTACIÓN INTERNA DE LA INFORMACIÓN. El SISTEMA BINARIO DE NUMERACION. El sistema decimal de numeración. Funcionamiento del sistema binario de numeración. Conversión decimal a binario. EL SISTEMA HEXADECIMAL DE NUMERACIÓN. Conversión hexadecimal a binario. Conversión binario a hexadecimal. REPRESENTACIÓN DE LETRAS. EL CODIGO ASCII. Representación de caracteres especiales. Número de cifras de los números de los códigos ASCII. Motivos para conocer el código ASCII. Otros códigos para representar información. REPRESENTACIÓN DE NÚMEROS ENTEROS Y REALES. Números enteros. Representación de números reales. REPRESENTACIÓN ANALÓGICA Y DIGITAL DE LA INFORMACIÓN. Inconvenientes de la representación analógica. Representación digital de la información. Ventajas de la representación digital binaria. UNIDADES DE INFORMACIÓN. El bit. Múltiplos del bit: Byte. KiloByte. MegaByte. GibaByte. TeraByte. EJERCICIOS. IES Juan de la Cierva. Vélez Málaga. Curso 2005-2006. Informática. 1Bach.Tecnológico. TÉRMINOS BÁSICOS DE LA INFORMÁTICA. Informática. Se define como la ciencia que se ocupa del tratamiento automatizado de la información. Su objetivo es conseguir almacenar y tratar la información mediante máquinas. Información. Es todo aquello que nos aporta algún tipo de conocimiento, y que puede transmitirse por un medio. Ordenadores. Son las máquinas que utilizamos para el tratamiento automático de la Información. REPRESENTACIÓN INTERNA DE LA INFORMACIÓN. Para que un ordenador sea capaz de tratar una información, ésta debe prepararse de forma que el ordenador pueda trabajar con ella. En los ordenadores modernos la información se representa mediante el sistema de numeración binario, empleando a su vez magnitudes eléctricas para representar los ceros y unos. El principal motivo para usar la electricidad es que de esta forma al hacer un cálculo no es necesario que se mueva ningún dispositivo mecánico. En una calculadora mecánica siempre estaremos limitados por la velocidad a la que pueden girar los engranajes (al estilo de un reloj antiguo). En un ordenador electrónico la velocidad límite es la velocidad de transmisión de la electricidad. Por tanto, los ordenadores actuales son capaces de hacer millones de operaciones matemáticas en un solo segundo. Los elementos mecánicos de un PC que si hacen movimientos en su funcionamiento tales como disqueteras, discos duros, etc... no participan en la ejecución de las instrucciones del ordenador, sino que solamente almacenan la información. EL SISTEMA BINARIO DE NUMERACIÓN. El sistema binario o de base 2 utiliza solamente 2 cifras (el 0 y el 1) para representar cualquier número. Veremos como funciona recordando en primer lugar el sistema decimal de numeración. El sistema decimal de numeración. Normalmente usamos el sistema decimal para representar los números. Este sistema emplea 10 cifras para poder representar cualquier número. En un sistema de numeración el valor de cada cifra depende de la posición en que se encuentra dentro del número. Por ejemplo, el número 256 en realidad es igual a la siguiente expresión: 2 * 10^2 + 5 * 10^1 + 6 * 10^6 que simplificada vale : 2 * 100 + 5 * 10 + 6 * 1 200 + 50 + 6 = 256 Las cifras se han conocido tradicionalmente como cifras de unidades, decenas, centenas, unidades de millar, decenas de millar, etc... IES Juan de la Cierva. Vélez Málaga. Curso 2005-2006. Informática. 1Bach.Tecnológico. Funcionamiento del sistema binario de numeración. Es equivalente al sistema decimal, pero usando las cifras {0,1} y potencias de 2. Por ejemplo, el número 10100 vale : 1 * 2^4 + 0 * 2^3 1 * 16 + 0 16 + 4 = 20 + + 1 * 2^2 1 * 4 + + 0 * 2^1 0 + + 0 * 2^0 0 El sistema binario resulta muy sencillo de utilizar. En cualquier caso se multiplica por 0, y entonces se obtiene un 0, o bien se multiplica por 1, dejando el mismo número multiplicado. Un pequeño truco para convertir un número binario a decimal consiste en escribir las sucesivas potencias de 2 (al cabo de un tiempo son fáciles de recordar), y sumar aquellas potencias que en nuestro número tienen una cifra 1. 32 16 8 4 2 1 1 0 0 1 0 1 = 32 + 4 + 1 = 37 Conversión decimal a binario. El método clásico para convertir un número decimal a binario es dividir el número por 2; el cociente que se obtiene dividirlo a su vez por 2, y así hasta no poder hacer más divisiones. Los restos se toman desde el último obtenido hacia el primero, formando las cifras desde la izquierda hacia la derecha del número binario. P.ejemplo : 1 11 / 2 23 / 2 1 El número binario es: 10111 5 / 2 1 2 / 2 0 1 Otro método más intuitivo para convertir un decimal a binario (y con el que no hace falta saber dividir!) consiste en buscar la potencia de 2 más cercana al número, y que sea menor que él. En el caso del 23 ésta potencia es 16. Restamos 16 a 23 y nos queda 7. Volvemos a buscar la potencia de 2 más cercana a 7, sin pasarnos. Es el 4. Restamos 4 a 7 y nos queda 3. La potencia más cercana ahora es 2. Al restar 2 a 3 nos queda 1. Por tanto, el 23 es igual a 16+4+2+1. Ahora hemos de poner un 1 en las cifras binarias que se corresponden con estas potencias: 16 8 4 2 1 1 0 1 1 1 EL SISTEMA HEXADECIMAL DE NUMERACIÓN. Utiliza 16 cifras para representar números. Emplea las 10 cifras numéricas {0,1,2,3,4,5,6,7,8,9} y las letras {A,B,C,D,E,F}, correspondiendo a la letra A un valor de 10, a la B de 11, a la C de 12, a la D de 13, a la E de 14 y a la F de 15. Para convertir un número hexadecimal a decimal se utiliza el mismo método que con el sistema binario. IES Juan de la Cierva. Vélez Málaga. Curso 2005-2006. Informática. 1Bach.Tecnológico. Por ejemplo, para convertir el número hexadecimal 1A3F tendremos en cuenta el valor hexadecimal de cada cifra : 1 * 16^3 + A * 16^2 + 3 * 16^1 + F * 16^0 1 * 4096 + 10 * 256 + 3 * 16 + 15 * 1 4096 + 2560 + 48 + 15 = 6719 en decimal. Para convertir desde decimal a hexadecimal dividimos sucesivamente por 16. 328 / 16 8 20 / 16 4 1 Después se toman los restos en orden inverso: 148 Podemos comprobar que este número hexadecimal no tiene letras en sus cifras. Al igual que con el sistema decimal, un número hexadecimal puede estar formado únicamente por cifras "bajas" y no utilizar las letras {A,B,..F}. Otro ejemplo : 1476 / 16 4 92 / 16 12 5 En este caso la cifra 5 es la de más valor del número. La siguiente cifra debe ser la que tenga valor 12, o sea, la C, y la última la 4. El número es el 5A4. Conversión hexadecimal a binario. La gran ventaja del sistema hexadecimal es su facilidad para convertir sus números a binario. Basta con conocer la representación binaria de las cifras hexadecimales : decimal hexa. binario 0 0 0000 1 1 0001 2 2 0010 3 3 0011 4 4 0100 5 5 0101 6 6 0110 7 7 0111 decimal hexa. binario 8 8 1000 9 9 1001 10 A 1010 11 B 1011 12 C 1100 13 D 1101 14 E 1110 15 F 1111 Por ejemplo, para convertir el número hexadecimal 1A3F a binario cambiamos cada cifra hexadecimal por su equivalente binaria : 0001 1010 0011 1111 Conversión binario a hexadecimal. Es también inmediata. Hay que agrupar las cifras binarias en grupos de cuatro, y sustituir cada grupo por la cifra hexadecimal correspondiente: 0011 1110 0001 1000 es el número hexadecimal 3E18 IES Juan de la Cierva. Vélez Málaga. Curso 2005-2006. Informática. 1Bach.Tecnológico. REPRESENTACIÓN DE LETRAS. EL CODIGO ASCII. Una vez que sabemos representar números binarios en el ordenador, es inmediato representar letras, pues basta con asignarle a cada letra un número binario. letra binario dec. hexa. A 1000001 65 41 B 1000010 66 42 ... G 1000111 71 ... Z 1011010 90 a b letra binario dec. hexa. 1100001 97 61 1100010 98 62 El código más utilizado es el llamado ASCII (American Standard Code for Information Interchange) Una característica fundamental del código ASCII (y de otros códigos) es que el número asignado a cada letra sigue el orden alfabético. Es decir, si una letra es la siguiente de otra, sus códigos también se diferencian en 1. Esta propiedad hace que sea mucho más fácil ordenar datos según orden alfabético. Existe una importante excepción. La letra Ñ tiene un código separado al resto de letras. El código ASCII se creó por organismos norteamericanos para el idioma inglés, que no tiene eñes. Por tanto ha sido necesario añadir esta letra aparte, y fuera del orden natural en español. También debemos tener en cuenta que las letras mayúsculas y minúsculas emplean códigos diferentes. Representación de caracteres especiales. Además de las letras del alfabeto, el código ASCII permite representar todos los símbolos que podemos ver en un teclado, e incluso bastantes otros que no aparecen en un teclado normal. Existen códigos para todos los caracteres de puntuación, llaves, corchetes, admiraciones, símbolos aritméticos, etc... Hay códigos que se utilizaban primitivamente para controlar el funcionamiento de las impresoras y monitores (los que tienen códigos menores de 16) Y también hay una serie de caracteres que permiten dibujar recuadros en pantalla, sin necesidad de hacer uso de gráficos. Número de cifras de los números de los códigos ASCII. El código ASCII utilizaba inicialmente números binarios de 7 cifras, con las que podemos representar 128 números binarios. Inicialmente se asignaron códigos para las letras mayúsculas (27 códigos), las minúsculas (otros 27), los caracteres de puntuación, especiales... Con la extensión de la informática hubo que tener en cuenta las letras propias de cada idioma (p.ej la cedilla, eñe, las letras acentuadas, diéresis, etc...) y fue necesario ampliar los 128 caracteres iniciales a 256. Por tanto actualmente se utilizan números binarios de 8 cifras para cada letra. Motivos para conocer el código ASCII. Hay ocasiones en que resulta muy conveniente saber interpretar datos binarios o hexadecimales. Puede que algún archivo importante se haya estropeado, y no se pueda abrir con el programa que usamos habitualmente, por ejemplo con Excel o Access. En este caso podemos perder información muy valiosa. Una forma de recuperar estos fallos consiste en abrir estos ficheros con un editor hexadecimal, que es un programa que sirve para ver el contenido del archivo en IES Juan de la Cierva. Vélez Málaga. Curso 2005-2006. Informática. 1Bach.Tecnológico. formato hexadecimal. Si sabemos cómo se representan internamente los datos podremos "leer" la información. Otra utilidad del código ASCII es cuando necesitamos un carácter que no podemos conseguir mediante el teclado del ordenador. Puede que el teclado esté mal configurado, y entonces los caracteres que aparecen en pantalla no se corresponden con los símbolos del teclado. También podemos querer un "carácter especial" no presente en el teclado. En estos casos basta con pulsar la tecla Alt, y a continuación teclear el código ASCII del carácter en la parte numérica del teclado (zona derecha). Por ejemplo, pulsando Alt 64 obtenemos la imprescindible arroba. Otros códigos para representar información. El código ASCII no es el único utilizado en la Informática. Son también importantes el EBCDIC empleado en ordenadores IBM de gran potencia, y el UNICODE, para entornos Windows NT e Internet. Estos códigos utilizan distintos números para las letras que el código ASCII. Por tanto si observamos datos en binario, debemos en primer lugar saber qué código utilizan, antes de intentar interpretarlos. REPRESENTACIÓN DE NÚMEROS ENTEROS Y REALES. Los números se almacenan dentro del ordenador mediante el sistema binario de numeración. Al igual que utilizamos el código ASCII para las letras, para los distintos tipos de números hemos de elegir una representación adecuada. Números enteros. Los números enteros son aquellos que no tienen parte decimal. Pueden ser positivos o negativos. La representación más simple es la binaria, añadiendo bit de signo, que suele ser el situado más a la izquierda. un P.ejemplo, si utilizamos 8 bits podremos representar desde el -127 hasta el 127. El bit de signo habitualmente es 0 para representar el signo + y 1 para el signo - Con esta representación podemos ver que se distingue entre el -0 y el +0. Ejemplos : 01111111 00000101 11111111 es +127 es +5 es -127 00000000 10000001 10000101 es +0 es -0 es -5 El mayor número entero que podemos representar depende del número de bits que utilizamos. Con 16 bits podemos representar entre el +32768 y el -32768. Con 32 bits podemos representar un valor máximo de unos 4000 millones. Representación de números reales. Los números reales pueden tener parte decimal. Dentro del ordenador se representan usando una versión del formato exponencial o científico. No entraremos en detalles por ser bastante "liosillo". REPRESENTACIÓN ANALÓGICA Y DIGITAL DE LA INFORMACIÓN. La representación analógica de la información consiste en representar un dato mediante el valor exacto de una magnitud física. IES Juan de la Cierva. Vélez Málaga. Curso 2005-2006. Informática. 1Bach.Tecnológico. Supongamos que deseamos representar un número en un circuito electrónico utilizando el valor del voltaje. Para representar el número 7 en ese circuito será necesario tener un 7 voltios; si queremos tener un 100 será necesario emplear 100 voltios, y así con todos los valores. Inconvenientes de la representación analógica: * La exactitud de estos dispositivos se ve muy afectada por las interferencias electrónicas, llamadas ruido. Es el mismo efecto que podemos observar en una transmisión analógica de televisión (la de toda la vida) cuando aparece "nieve" en la imagen (por ejemplo al recibir una llamada de móvil al lado de la pantalla). * Con representación analógica es fácil representar números, pero no letras. * Hay falta de precisión. Estaremos siempre limitados por la precisión de los instrumentos con que midamos el valor de la magnitud analógica. Por ejemplo, si usamos un voltímetro que tiene un margen de error de 1 voltio, nunca podremos estar seguros del número exacto que se representa en el circuito. Representación digital de la información. La representación digital de la información se basa en utilizar el sistema de numeración binario. Este sistema utiliza solamente las cifras 0 y 1 para representar cualquier número. A su vez, dentro del ordenador el 0 se representa mediante la ausencia de corriente en un circuito eléctrico, y el 1 mediante un circuito eléctrico "encendido". Ventajas de la representación digital binaria. * Usar solamente 2 cifras para representar cualquier número simplifica mucho el diseño de los ordenadores electrónicos. * El sistema binario permite representar números, letras y cualquier otro tipo de información. Por ejemplo, para representar las letras del alfabeto, se asigna a cada letra un número distinto. * La representación digital es muy resistente al ruido. En la representación analógica basta un pequeño cambio en las entradas para que afecte a la salida. En la representación binaria, para que se produzca un cambio es necesario que un circuito que está "apagado" pase a estar "encendido", lo que habitualmente se corresponde con una diferencia de voltaje suficiente para que no suceda por "accidente". Además se han desarrollado métodos para detectar estos fallos, y por tanto descubrir cuando la información digital se ha estropeado accidentalmente. (Códigos Detectores/Correctores de Errores) IES Juan de la Cierva. Vélez Málaga. Curso 2005-2006. Informática. 1Bach.Tecnológico. UNIDADES DE INFORMACIÓN. El bit. En términos informáticos un bit es un dígito binario, que puede tomar valor 0 o 1. Dentro del ordenador un bit se corresponde con un circuito electrónico, que en un determinado momento puede estar encendido o apagado. Múltiplos del bit. El bit es la unidad mínima de información. Equivale a la respuesta "si" o "no" a una cuestión. Al igual que otras medidas físicas, el bit tiene múltiplos: El byte. Se corresponde con 8 bits. Kilobyte: Son 2^10 bytes, o sea 1024 bits. El número 1024 no es "redondo" según nuestro criterio habitual. Sin embargo, en el ámbito de los ordenadores las potencias de 2 son mucho más adecuadas que las de 10, pues por ejemplo, los circuitos suelen diseñarse con números pares de componentes. Normalmente cuando hablamos de Kbytes se piensa por aproximación en múltiplos de 1000, aunque en realidad se trata del número 1024. Megabyte. 2^20 bytes. Aproximadamente 1 millón de bytes. Gibabyte. 2^30 bytes. Aprox. mil millones de bytes. Terabyte. 2^40 bytes. Aprox. un billón de bytes. IES Juan de la Cierva. Vélez Málaga. Curso 2005-2006. Informática. 1Bach.Tecnológico. EJERCICIOS. (Hacer de forma manual, usar la calculadora solamente para comprobar resultados) 1.1. Convertir los siguientes números decimales a binarios: 23, 45, 102, 99 1.2. Convertir de decimal a hexadecimal: 104, 255, 3459, 400 1.3. Convertir de binario a decimal : 10000101, 11101, 1110100011, 1010101 1.4. Convertir de hexadecimal a decimal: 1A, FCDB, 2345, 345ABC 1.5. Convertir de binario a hexadecimal: 11010011, 110100010011, 110111, 10101 1.6. Descubre qué dice el siguiente mensaje ASCII codificado en hexadecimal: 686F6C61206D756E646F 1.7. Descubre el significado de este mensaje ASCII binario : 0110 1010 0110 0001 0111 0110 0110 1001 1.8. Codifica en ASCII binario tu nombre propio: (la letra ‘a’ minúscula tiene el código número 97) 1.9. Calcula cuántos bits hay en 32768 bytes. 1.10. ¿Cuántos Kb hay en 10 Gigabytes? 1.11. Una línea telefónica transmite a la velocidad de 56 Kilobits por segundo. ¿Cuánto tardaremos en descargar un archivo de 3 Megabytes? 1.12.Una tarde doy un paseo a casa de un compañero de clase llevándole un CD con 700 Megabytes de información. En el paseo tardo 10 minutos. Calcular la “velocidad de transmisión” en Kilobytes por segundo. 1.13. Cuántos Megabytes puede descargar en 1 hora una línea ADSL que funciona a 512 Kilobits por segundo. //