Indice 2.1.- Introducción 2.2.- Definición de Información 2.3.- Operaciones Elementales en el Tratamiento de la Información 2.4.- Codificación de la Información 2.5.- Codificación Binaria 2.6.- El Sistema Binario 2.7.- Conversiones entre los Sistemas de Numeración 2.7.1.- Decimal-Binario 2.7.2.- Binario-Decimal 2.8.- Codificación de los Datos en Binario 2.9.- Codificación Alfanumérica 2.10.- Preguntas de Repaso 2.1.- INTRODUCCIÓN Es bien sabido por todos el dicho corriente que dice que "Información es poder". Quien posee la información posee el poder de actuar sobre la realidad circundante en sentido favorable hacia sus intereses. Pero, realmente, ¿en qué consiste esta información de cuyo flujo y proceso se ocupa principalmente la Cibernética, la Informática y la Ingeniería de Comunicaciones?. Su dificultad para conceptuarla viene del hecho de que no es una realidad física y tangible, sino que es algo inmaterial. Por ello, se pretende dentro de este tema, como principal objetivo, hacer una definición del término información, para poder, a continuación, presentar un estudio sobre su necesidad e importancia en el diseño de un Sistema de Información. También se justificará la necesidad de su codificación, de forma que pueda ser representada y tratada convenientemente por los soportes físicos orientados a tal fin. 2.2.- DEFINICIÓN DE INFORMACIÓN En el lenguaje corriente se usa la palabra Información como sinónimo de noticia, conocimiento, etc... Aunque este significado no sea idéntico a la definición de información en el contexto informático, es bueno considerarlo para comprender la evolución progresiva por la que se ha llegado a un significado sensiblemente diferente. El concepto científico de información tiene gran importancia en el proceso de comunicación. La información no surge por generación espontánea, o de forma mágica, sino que hay que obtenerla por los medios y procedimientos que sean necesarios. La información se elabora a partir de su materia prima: los datos. Aunque muy frecuentemente los términos datos e información son utilizados como sinónimos, en Informática se les dan significados claramente separados que conviene no confundir. Previamente, es necesario aclarar los conceptos de dato y carácter, a partir de los cuales se va a obtener la definición de información, desde el punto de vista que interesa en Informática. Los caracteres son los signos numéricos, alfabéticos o especiales que se emplean en la escritura y en el cálculo. Los caracteres numéricos se corresponden con las cifras del sistema decimal (0...9); los alfabéticos, con las letras del alfabeto (a...z); y los especiales comprenden el resto de los signos empleados en la escritura y en el cálculo, incluyendo el espacio en blanco. La palabra dato proviene del latín datum que significa "lo que se dá" en el sentido de "lo que acontece". El diccionario de la Real Academia de la Lengua Española dice que datos son: "antecedentes necesarios para llegar al conocimiento exacto de una cosa o para deducir las consecuencias legítimas de un hecho". La mayor parte de los datos suelen ser magnitudes numéricas, nombres, frases enteras, premisas, principios filosóficos, etc., y son representados, normalmente, como una secuencia de caracteres. Según sean los caracteres que formen el dato, éste podrá ser numérico, alfabético o alfanumérico. Algunos ejemplos son: o Datos numéricos........: 5000000,4,32456 Datos alfabéticos......: Libro, Bombilla o Datos alfanuméricos....: A(71)+B(3),(Dato1*Alfa) o Los datos por sí mismos no aportan los conocimientos necesarios para una toma de una decisión conveniente. Sólo una elaboración adecuada de los datos, proporcionará el conocimiento deseado. Se define, pues, información como el resultado del tratamiento de una serie de datos. Es lo que se conoce como proceso de datos, que consiste básicamente en planificar una serie de acciones y operaciones sobre unos datos concretos, con el fin de llegar a una información deseada. Información: Conjunto de datos que nos revelan una incertidumbre. Para que un dato aporte información, bien considerado aisladamente o en combinación con otros, es necesario que esté definido conceptualmente por medio de un nombre, y cuantitativamente por un valor, además de estar inmerso dentro de un contexto en el cual tenga relevancia. Así, los datos numéricos del ejemplo anterior no aportan ninguna información, si no están relacionados con un nombre concreto, como población, nota, capacidad, etc., y no están dentro de un contexto; así, el hecho de que una población tenga 500000 habitantes no aporta ninguna información, si no se especifica el nombre de la población. Este conjunto de datos al que se hace referencia en la definición de información, tienen que ser el número necesario y estar estructurados en un orden determinado, para que aporten algún conocimiento de las cosas en general. Las mismas palabras empleadas en distinto orden aportarían una información diferente, o incluso ninguna: "Madrid es la capital de España" "capital es la Madrid España de" Otra consideración a tener en cuenta es la de si el conocimiento que se consigue es cierto, o no, como el ejemplo: "España es la capital de Madrid", y por lo tanto de si la información es o no utilizable. La Información tiene que ser: Exacta o Estructurada o o A tiempo Al conjunto de medios, recursos, dispositivos, procedimientos y operaciones involucradas en la obtención de un conocimiento se le denomina Sistema de Información. Figura 2.1 La parte de la Informática que se ocupa del diseño de Sistemas de Información se llama Análisis de Sistemas, y a grandes rasgos, se descompone en tres etapas, según se ilustra en la Figura 2.2. Figura 2.2 2.3.- OPERACIONES ELEMENTALES DEL TRATAMIENTO DE LA INFORMACIÓN La información puede ser tratada mediante un conjunto de operaciones elementales, teniendo lo que se llama tratamiento de la información. Tanto si se realiza manualmente como si se hace con la ayuda de máquinas, el proceso está basado en la utilización de todas o de algunas de las operaciones elementales que se definen a continuación: o o o o o o LECTURA: Facultad de captar los datos de entrada a ser procesados. Es obvio que no se puede resolver el ejercicio más simple de aritmética, por ejemplo sumar dos números, si no se sabe leerlos. La misma cuestión se presenta si se quiere resolver el ejercicio con una máquina. REGISTRO: Facultad de almacenar la información leída durante el tiempo necesario, y hacer uso de ella en el momento que se precise. En el ser humano esta operación se realiza gracias a la memoria, es evidente que sería imposible tratar información, si por lo menos no pudiesen retener el dato o datos con los que operar, el tipo de operación a realizar y la información resultante del tratamiento. CLASIFICACION: Facultad de ordenar la información almacenada de forma que se pueda acceder a la misma en el momento que sea necesario. Sea, por ejemplo, un diccionario en que las palabras no estuviesen ordenadas alfabéticamente, sería prácticamente imposible poder utilizarlo, por el excesivo tiempo de búsqueda. CALCULO ARITMETICO Y LOGICO: Facultad de poder realizar al menos las operaciones elementales aritméticas y lógicas, y los algoritmos que a partir de ellas permitan realizar cálculos aritméticos más complejos. ESCRITURA: Facultad de reflejar la información leída directamente, u obtenida a través de un proceso determinado, de forma ordenada y clara sobre un soporte también determinado. Esta operación se diferencia conceptualmente de la reproducción en cuanto que la información se ordena por la máquina de forma que sea inteligible. REPRODUCCION: Facultad de poder transcribir automáticamente información original a un soporte determinado tantas veces como se desee. Este es el único punto de vista desde el que interesa esta operación, ya que manualmente realizarla constituye una combinación de las operaciones de lectura y escritura. Las máquinas de reproducir, basadas en los diferentes sistemas de reproducción, XEROX, OFFSET, etc., realizan esta operación sin posibilidad de cambiar el orden en que está dispuesta la información original; realizan transcripción. Este es el sentido en que debemos interpretar esta operación. 2.4.- CODIFICACIÓN DE LA INFORMACIÓN Después de haber visto el concepto de información así como sus características intrínsecas, se plantea otro aspecto de gran trascendencia en el tratamiento de la información, pero que sin embargo no afecta a su esencia. Es el que se refiere a la forma en que se expresa, o técnicamente hablando su codificación en diversos y distintos códigos. Como se sabe, existen multitud de idiomas en el mundo, de forma tal, que un libro escrito originalmente en uno de ellos puede ser traducido a los demás. Si estas diferentes versiones están correctamente realizadas, resulta que la información contenida el el citado libro, la misma, está expresada de muy diferentes formas. Analizando un poco más detenidamente el ejemplo anterior, se pueden destacar los tres hechos siguientes: • Una misma información se puede expresar de muy diferentes formas. • Estas diferentes formas no tienen por qué limitarse a las relativas a los idiomas ya conocidos, se podría haber inventado un nuevo idioma, y expresarlo en éste, sin que por ello sufriera deterioro la información contenida en el citado libro. • Es claro que cada versión del libro tendrá sentido para el que domine el idioma correspondiente, es decir, para aquel que posea la clave que liga la expresión material de la información con la representación mental de la misma. Por otra parte, muchas veces la codificación es necesaria por exigencias del medio utilizado en un proceso de comunicación. Un ejemplo es la telegrafía. Asimismo, en el ámbito de las telecomunicaciones, una de las formas de optimizar la eficacia operativa de un canal de comunicaciones es codificar la información. La razón es que un mensaje codificado es menos susceptible de ser distorsionado por el ruido del canal. De ahí el esquema de la figura 2-3 para un sistema de comunicación, donde el decodificador realiza la operación inversa, devolviendo el producto codificado a su estado original. Figura 2.3 2.5.- CODIFICACIÓN BINARIA Como ya se ha expuesto, una misma información se puede expresar de muy diversas formas, según el código utilizado; y éste, a su vez, depende del canal de comunicación empleado en la transmisión. En el caso de la Informática, es necesario expresar toda la información a procesar de manera que sea inteligible al soporte por el que va a circular, es decir, el ordenador. Un ordenador, como se verá en temas posteriores, es una máquina compleja en la que la información se representa mediante una gran variedad de componentes electrónicos que tienen como característica común, el funcionar bajo la modalidad binaria, es decir, poseen solamente dos estados posibles. Así, un núcleo magnético sólo puede estar imantado en un sentido u en otro; los transistores pueden estar saturados o bloqueados; y por un medio conductor puede circular un impulso o no. La elección de componentes binarios en estos sistemas de comunicación obedece a dos razones fundamentales: 1. Seguridad y rapidez de respuesta de los elementos físicos que poseen dos estados diferenciados. 2. Sencillez y fiabilidad de las técnicas del tratamiento de la información bajo la modalidad binaria. De acuerdo con lo que se acaba de indicar, un ordenador sólo distingue la presencia o ausencia de una señal previamente establecida. Un convenio universalmente adoptado y que ha sido extraordinariamente fructífero consiste en representar la presencia de señal por el símbolo 1, y la ausencia de la misma por el símbolo 0. Dichos símbolos se denominan comúnmente bits (Binary Digit). Resulta de aquí que cualquier información que se desee tratar, ha de estar constituida necesariamente por una sucesión de ceros y unos, es decir, ha de estar codificada en binario. De lo dicho se deduce que un código binario ha de poseer una distribución determinada de bits, característica para cada uno de los símbolos numéricos, alfabéticos y especiales que constituyen el lenguaje corriente. De acuerdo con esta definición, en principio, el número de códigos binarios es infinito. Sin embargo el número de los realmente empleados es muy reducido por razones de tipo teórico y práctico. 2.6.- EL SISTEMA BINARIO Es el sistema de numeración que utiliza el hardware de las computadoras actuales. Se basa en la representación de cantidades utilizando los dígitos 0 y 1 (bit). Por tanto su base es 2 (número de dígitos del sistema). Se suele utilizar con nombre propio determinados conjuntos de bits: o o o o o cuatro bits se denominan cuarteto ocho bits octeto o byte 1024 bytes se denomina kilobyte o simplemente K 1024 Kilobytes forman el llamado Megabyte 1024 Megabytes se denominan Gigabyte 2.7.- CONVERSIONES ENTRE LOS SISTEMAS DE NUMERACIÓN Se denomina conversión a la transformación de una determinada cantidad en un sistema de numeración a su representación en otro equivalente. 2.7.1.- Conversión Decimal-Binario Para convertir números enteros de decimal a binario, la forma más simple es dividir sucesivamente el número decimal y los cocientes que se van obteniendo por 2, hasta que el cociente sea 0. La unión de todos los restos obtenidos escritos en orden inverso nos proporciona el número inicial expresado en sistema binario. Ejemplo: Convertir el número decimal 13 a binario 13 | 2 +--1 6|2 +--0 3|2 +--1 1|2 +---1 0 13 -----> 1101 Cuando trabajamos con partes decimales, la forma más simple consiste en multiplicar dicha fracción por 2, obteniendo en la parte entera del resultado el primero de los dígitos binarios de la fracción binaria que buscamos. A continuación repetimos el mismo proceso con la parte fraccionaria del resultado anterior, obteniendo en la parte entera del nuevo resultado el segundo de los dígitos buscados. Iteraremos sucesivamente de esta forma, hasta que desaparezca la parte fraccionaria o hasta que tengamos los suficientes dígitos binarios que nos permitan no sobrepasar un determinado error. Ejemplo: convertir la fracción decimal 0.828125 en binario 0.828125 * 2 = 1.65625 0.65625 * 2 = 1.3125 0.3125 * 2 = 0.625 0.625 * 2 = 1.25 0.25 * 2 = 0.5 0.5 * 2 = 1.0 0.828125 -----> 0.110101 2.7.2.- Conversión Binario-Decimal El método consiste en la aplicación de la siguiente fórmula: N = Sum[(digito)i * 2i] siendo: N: número decimal i: posición respecto a la coma d: número de dígitos a la derecha de la coma n: número de dígitos a la izquierda de la coma dígito: cada uno de los bits del número en binario Ejemplo: Convertir el número 1101 a decimal N = Sum[(digito)i* 2i] = 1*2 3+ 1*22 + 0*21 + 1*20 = 8+4+0+1 = 13 2.8.- CODIFICACIÓN DE LOS DATOS EN BINARIO Los ordenadores trabajan en sistema binario, esto quiere decir que cualquier caracter que queramos que el ordenador nos reconozca tiene que estar codificado siguiendo una distribución de ceros y unos (bits). El siguiente paso será averiguar que longitud tendrá esa distribución. Con N bits puedo conseguir 2^N combinaciones diferentes de ceros y unos. Puedo codificar 2^N caracteres Ejemplo: Cuantos simbolos puedo codificar con 3 bits 000 0 001 1 010 2 011 3 100 4 101 5 110 6 111 7 Para N=3 puedo codificar 2^3 = 8 símbolos diferentes Pero la situación se suele presentar al revés. Conozco el número de símbolos que quiero codificar y necesito saber cual es el número de bits que voy a utilizar. Sea M el número de símbolos a codificar y N el número de bits necesarios: N = 3.32 * LOG(M) Ejemplo: Sea el alfabeto de 26 letras, calcular el número de bits necesario para codificarlo Siempre superiormente. N = 3.32 * LOG(26) = 4.6 ----> 5 bits que el resultado dé decimales redondearemos 2.9.- CODIFICACIÓN ALFANUMÉRICA Con el sistema binario hemos resuelto el problema de convertir cualquier número decimal en un conjunto de ceros y unos. Nos queda por resolver la representación de las letras y caracteres especiales que usamos normalmente al escribir. Para ello se han desarrollado unos códigos normalizados que establecen una correspondencia entre todos los caracteres y un grupo de bits. Por ejemplo, podríamos ponernos todos de acuerdo en que 110101 es la letra A. Los dos códigos más extendidos son el código ASCII y el EBCDIC. • Código ASCII:Utiliza 7 de los 8 bits que componen el byte. El bit más significativo, el de la izquierda, no se utiliza por lo que en total pueden representarse 2^7 = 128 caracteres. El valor binario de los números decimales es inferior al valor binario de los símbolos alfabeticos. Por lo que, en una ordenación ascendente, los números estarán antes que las letras. • Código EBCDIC: Utiliza los 8 bits del byte, pudiendo representar hasta 2^8 = 256 símbolos distintos. En EBCDIC ocurre lo contrario que en ASCII, las letras tienen valores inferiores a los números. A la hora de hacer clasificaciones, el ordenador clasifica según sus códigos bina-rios, por lo que las letras ocuparán las primeras posiciones. 2.10.- PREGUNTAS DE REPASO o o o o o o o o ¿Qué es un Sistema de Información? Cual es la razón o razones para utilizar la codificación binaria Unidades de Almacenamiento de la Información Cuantos bits hay en 2 Kilobyte Convertir 13584 a binario Convertir 11010011101 a decimal ¿Cuantos símbolos puedo codificar con 5 bits? ¿Cuandos bits necesito para codificar 512 símbolos?