Está en la página 1de 55

Ing. Nelly Cueva.

INTRODUCCIN. La explosin informativa que se percibe actualmente (entre cuyas causas destacan la incidencia de la informacin en el desarrollo de la tecnologa e investigacin y que la sociedad demanda y maneja gran cantidad de informacin) es un hecho que hace difcil discernir la informacin conveniente o beneficiosa, de la que supone contaminacin o perjudicial, que a veces hace que se pueda decir que "no se distinga el rbol de entre el bosque". La tasa de crecimiento, hace necesario que el tratamiento de la informacin, se lleve a cabo de forma automtica. Como origen y causa de ste crecimiento exponencial de la informacin, aparece paradjicamente la solucin, la informtica, definida como el tratamiento de la informacin de forma automatizada. Hablar de informtica es aplicar las caractersticas del mtodo cientfico en resumen Problema mtodo y junto a esto la solucin. La informtica, tan verstil y polimrfica comenz a aplicarse a diferentes campos, empezando con el uso de computadores en primer lugar en el mbito militar, ocupando entonces gran espacio y consumiendo mucha energa, a travs de las sucesivas generaciones, en base a los adelantos de la ciencia, fueron reduciendo su tamao y consumo, hacindose asequible a cualquier tipo de actividad, habindose extendido en la actualidad al mundo econmico, empresarial y personal, siendo imprescindibles en la oficina para tener una eficaz gestin de la empresa. Objetivos. Adentrar al estudiante en conocimientos bsicos en lo referente a su carrera. Familiarizarse con los conceptos bsicos de informtica. Aprender a razonar de forma cientfica y tener una visin crtica y escptica ante situaciones reales.

Ing. Nelly Cueva.


CONTENIDO CAPITULO I 1. LA INFORMACIN 1.1. Introduccin. 1.2. Las ondas, portadoras de la informacin. 1.3. Informtica y el Computador 1.4. Las generaciones de computadores. 1.5. Tipos de computadores CAPTULO II 2. REPRESENTACIN DE LA INFROMACIN. 2.1. Introduccin 2.2. Cdigos de Entrada y Salida. 2.3. Sistemas de numeracin. 2.3.1. Representacin posicional de los nmeros 2.4. Representacin interna de la informacin. CAPITULO III 3. ELEMENTOS FSICOS Y LGICOS DE UN COMPUTADOR. 3.1. Perifricos De Un Computador 3.2. Dispositivos de entrada 3.3. Dispositivos de Salida 3.4. Dispositivos de almacenamiento. CAPITULO IV 4. LENGUAJES DE PROGRAMACIN Y SISTEMAS OPERATIVOS. 4.1. Metodologas de la programacin. 4.2. Tipos de Lenguajes. 4.3. Historia de los Sistemas Operativos.

Ing. Nelly Cueva.


CAPITULO I LA INFORMACIN 1.1 Introduccin Informacin es una de las palabras ms empleadas en los entornos tecnolgicos actuales, tiene unos orgenes que en nada se parecen al significado habitual. En latn in-formare era dar forma, y tambin significaba dar forma mental, es decir hacerse una representacin o concebir una idea a partir de algo. En el siglo XVII ya aparece el trmino informacin en castellano, cuyo sentido era de averiguacin legal (por ejemplo, de delitos), y hasta el siglo XIX no adquiere el significado de educacin o instruccin. Como suceda habitualmente, mientras tanto el francs llevaba la palabra hasta el ingls, donde se en el siglo XIV aparece con el significado de "comunicacin del conocimiento". En el siglo XX muchas lenguas compartan ya la palabra en este ltimo sentido. Bajo el trmino informacin consideramos cualquier conocimiento susceptible de ser transmitido. Sin embargo en los entornos tecnolgicos informacin es algo estructurado: "datos ya sea en la forma de nmeros, grficos o palabras que han sido organizados, sistematizados y presentados de modo que los patrones subyacentes queden claros", segn Bryan Pfaffenberger, en su obra "Diccionario para usuarios de computadoras e internet, Mxico, 1998". La aparicin de los computadores exigi la creacin de dispositivos de memoria de elevadas capacidades, que han ido evolucionando con el tiempo: tarjetas perforadas, rels electromagnticos, ncleos de ferrita, discos magnticos, memorias de semiconductores, discos pticos, memorias hologrficas y experimentalmente memorias de bacterias y de nanotubos. Sin embargo actualmente no se han logrado memorias del tipo de la humana, tanto por su arquitectura como por su capacidad. 1.2 Las ondas, portadoras de la informacin. La informacin se transmite en el espacio solamente con la ayuda de un proceso que se propague en el espacio. A este proceso oscilatorio mvil lo llamamos ondulatorio. En funcin del medio ambiente oscilante, las ondas pueden ser de mar, de sonido, de radio, etc. Ondas Con ms precisin se puede definir como perturbacin cualquier distribucin de las partes de un sistema que sea diferente de su condicin de reposo natural. Una onda fsica es una perturbacin que se mueve debido al efecto que las partes del sistema ejercen entre s. Una onda se puede utilizar para enviar informacin. Supongamos que apagamos las luces, y que en cada extremo del muelle se pone una persona. Las seales se envan mediante la contraccin de espiras en un extremo, notndose en el otro extremo la regin comprimida. Una vez finalizado el movimiento se puede enviar otra seal. Para enviar mensajes largos se puede utilizar un cdigo semejante al Morse. Ejemplos de informacin: Veamos esto con un ejemplo, si nos dicen las siguientes frases: 4

Ing. Nelly Cueva.


- La persona que describo tiene el pelo oscuro. - La persona que describo es mujer. En la primera frase se nos da un dato de todos los posibles (claro, castao, pelirrojo, rubio, canoso), al igual que en la segunda, (hombre, mujer, lesbiana, "gay", bisexual), por tanto la primera y la segunda nos dan igual informacin, sin embargo si en el segundo caso simplificamos y slo consideramos dos posibilidades (hombre, mujer), obtenemos ms informacin al disminuir mucho ms la incertidumbre que tenamos con respecto a la persona. Otro ejemplo: El alfabeto espaol se compone de 27 letras. Si un computador genera letras al azar, la informacin que nos suministra el conocer que letra ha salido ser mayor que en cualquiera de los casos anteriores porque el nmero de estados posibles es mayor (27). Conclusin: La cantidad de informacin que obtenemos con un mensaje es directamente proporcional al nmero de estados posibles de la cuestin planteada. 1.3 La Informtica. Concepto. La informtica es la ciencia tecnolgica que estudia el tratamiento automtico y racional de la informacin, con el fin de obtener de ella mxima utilidad. La informtica usa las computadoras u computadores para el tratamiento y proceso de la informacin. En primer lugar, y antes de saber cmo se representa la informacin, lo que vamos a hacer es entender el concepto de informacin. Como ya se dijo anteriormente, el trmino informacin es sinnimo de conocimiento, de noticia, de datos, etc. Podramos pensar que la informacin existe cuando hay comunicacin de datos, pero eso no es as, en un proceso de comunicacin, la informacin que se adquiere depende mucho del receptor. Un sistema de comunicacin est formado por los siguientes elementos bsicos.

EMISOR

MEDIO

RECEPTOR

Elementos de un sistema de comunicacin La transmisin de informacin entre el ser humano y la computadora puede hacerse de muchas maneras: Mediante caracteres alfanumricos (letras {a, b, , z} y nmeros {0, 1, , 9}). Por ejemplo los introducidos al computador mediante un teclado. Mediante sonidos como los introducidos al computador a travs de un micrfono, o que salen del computador por los altavoces. Mediante videos: como las imgenes obtenidas con una cmara de video. Mediante graficas e imgenes: por ejemplo una imagen introducida por un escner, o fotografas descargadas desde una cmara digital. En general, cualquier tipo de dato enviado por un perifrico del computador capaz de tomar datos de cualquier tipo y enviarlo al computador, o a la impresora.

Ing. Nelly Cueva.

1.4 Las generaciones de computadores La informtica se puede considerar como "tratamiento automatizado de la informacin" y la primera persona que construy una mquina (que todava no era un computador) con esta finalidad fue Herman Hollerit (1860-1929). En 1886, cuando trabajaba para la oficina del censo en EE.UU. se percat de que el procesamiento de los datos del censo del ao 1880, no se haba terminado en el momento de hacer el de 1890. Para resolver el problema dise una tarjeta que se deba perforar con los datos de cada uno de los encuestados. Estas fichas se introducan en una lectora que detectaba las perforaciones mediante un bao de mercurio (Hg), que al introducirse por los agujeros provocaba contactos elctricos. Finalmente los datos se registraban en una tabuladora. Con ello se multiplic por 100 la velocidad de proceso, 200 fichas por minuto. Hollerit fund su propia empresa, la Tabuling Machine Co. (1896) posteriormente convertida en la Computing Tabulating Recording (1911), tras pasar a manos de Thomas Watson (1874-1956) se denomin en 1924 International Bussiness Machines (IBM).

Otra gran empresa, Unisys, tiene su remoto origen en esta poca. Al dejar Hollerit la Oficina del Censo, lo sustituy James Powers, quien fund en 1911 la Powers Accounting Machine Co., que pas a formar parte en 1927 de la Remington-Rand Corporation. Esta empresa aos ms tarde construy los primeros computadores Univac. Hasta 1950 las empresas fundadas por Hollerit y Powers se dedicaron a la fabricacin de tabuladoras para la gestin de grandes empresas y organismos oficiales. La primera tabuladora lleg a Espaa en 1925 y se instal en la entonces denominada Compaa Telefnica Nacional de Espaa (actualmente Telefnica de Espaa S.A.). En 1926 se instal otra en el ayuntamiento de Barcelona. A finales de los aos 1950 haba unas 70 en toda Espaa.

Ing. Nelly Cueva.


Computadores de Primera Generacin Los primeros computadores fueron electromecnicos (en base a rels). Aunque Jorge Stibz construy en 1949 en los laboratorios Bell una mquina programable que trabajaba con nmeros complejos, el Complex Calculator, se considera que el primer computador fue desarrollado en 1941, el Z3 del alemn Konrad Zuse (1910-1995), cuya empresa fue adquirida por Siemens (actualmente computadores Fujitsu). Le sigui en 1944 el Mark I de Howard Aiken (1900-1973) y Grace Hopper (1906-1992), construido en la Universidad de Hardward con la colaboracin de IBM. Pesaba cinco toneladas y tena ms de 750000 piezas y 800 km de cable. Durante la dcada de 1950 Aiken trabaj activamente con investigadores espaoles del Instituto de Electricidad y Automtica del CSIC, fundado por Torres Quevedo. La sustitucin de los rels por tubos de vaco dio lugar a la Primera Generacin de computadores electrnicos. El primero fue fabricado en 1945,el ENIAC (Electronic Numerical Integrator and Calculator) de los estadounidenses John Eckert (1919-1995) y John Mauchly (1907-1980) que se us en el clculo de trayectorias de proyectiles. Acabada la guerra se utiliz para calcular el nmero pi con unos 2000 decimales, y para hacer los primeros diseos de la bomba de hidrgeno. Tena 18000 tubos y pesaba 30000 kg. Era 300 veces ms rpido que el Mark I y costaba 400000 dlares frente a los cinco millones del Mark I. Sin embargo slo tena 20 registros de memoria, de 10 dgitos; estaba pues muy lejos de cualquier computador personal. En un test de prueba en febrero de 1946 el Eniac resolvi en dos horas un problema de fsica nuclear que previamente habra requerido 100 aos de trabajo humano. Lo que lo caracterizaba como a los computadores modernos no era simplemente su velocidad de clculo sino el hecho de que combinando operaciones permita realizar tareas que previamente eran imposibles. Antes del ENIAC, en 1940 se crearon otras mquinas electrnicas, un pequeo calculador del fsico John Atanasoff (1903-1995) que no era automtico ni programable y varias mquinas britnicas para descifrar los mensajes del ejrcito alemn, por ejemplo, en 1943 el Colossus. La batalla legal por la palabra "Computer" la gan en el ao 1973 Atanasoff. Echerk y Mauchly crearon la Electronic Control Co, que en 1950 fue adquirida por la Remington-Rand, all disearon el primer computador electrnico de gestin, el UNIVAC (UNIversal Automatic Computer). El aparato tuvo gran xito y cop el mercado, que hasta entonces haba sido feudo de IBM. En respuesta IBM cre una serie de computadores excelentes, como el IBM 705, en 1952, desbancando a Univac, mediante una publicidad agresiva. El UNIVAC II no sali hasta 1958, cuando IBM ya haba recobrado el liderato. De poco les haba servido una fusin con Sperry Giroscope Co (1955) para crear la Sperry Rand Corporation.

Ing. Nelly Cueva.


En 1945 mientras se construa el ENIAC, se incorpor al equipo el prestigioso matemtico hngaro Johannes Von Neumann (1903-1957), quien propuso que los programas se almacenasen en la memoria como si fuesen datos, y no en una memoria especial, como se haca desde el diseo de Babbage, equipo que se iba a llamar EDVAC. Los informes fueron tan precisos que otros se adelantaron y as el primer computador tipo Von Neumann fue el EDSAC (Electronic Delay Storage Automatic Calculator) construido el ao 1949 por Maurice Wilkes (1913-) en la Universidad de Cambridge. De esta generacin slo lleg uno a Espaa, un IBM 650, contratado por RENFE en 1958. Computadores de segunda generacin Se considera el inicio de esta generacin en 1958, con la sustitucin de los tubos de vaco por los transistores. Los primeros computadores transistorizados fueron dos pequeos modelos de NCR y RCA. Los primeros de IBM y Sperry Rand fueron el IBM 7070 (1960) y el UNIVAC 1107 (1962), respectivamente. Bull comercializ los Gamma 30 y 60. Durante esta poca se introdujeron las unidades de cinta y discos magnticos, y las lectoras de tarjetas perforadas e impresoras de alta velocidad. As mismo aparecieron algunos lenguajes de programacin, COBOL (1959), Algol (1960), el LISP(1962) y FORTRAN que fue creado en 1954 para IBM, por John Backus (1924-2007). El segundo computador instalado en Espaa, y primero de la segunda generacin lleg en 1959, era un UNIVAC UCT, contratado por la antigua Junta de Energa Nuclear, actualmente CIEMAT. La era de la informtica lleg realmente a nuestro pas en 1961, en la Feria de Muestras de Barcelona, se present un IBM 1401. Los primeros se instalaron en 1962, Sevillana de Electricidad (empresa del grupo ENDESA), Galeras Preciados (Actualmente propiedad de El Corte Ingls S.A.) y Ministerio de Hacienda. En 1967 IBM don a la Universidad Complutense de Madrid un computador cientfico, modelo 7094.

Computadores de tercera generacin La principal caracterstica de esta generacin fue el uso del circuito integrado, que se incorpor a mediados de los aos 1960. Destaca la familia IBM 360 en cuyo desarrollo invirti 5000 millones de dlares de aquella poca (1964) y sobre todo la IBM 370 (1970), el producto ms famoso de esta generacin. Sperry Rand, en 1965 introdujo la famosa serie 1100. Durante esta poca surgieron la multiprogramacin y el tiempo compartido. Tambin tuvo lugar la denominada "crisis del software" Se intent la creacin de lenguajes universales, el PL/1

Ing. Nelly Cueva.


(1964) y se estandarizaron los lenguajes ms utilizados: Fortran (1966), Algol (1968) y el COBOL (1970). Tambin datan de esta generacin el BASIC (1964) y el Pascal (1971). En Espaa durante el trienio 1964-67 las tabuladoras fueron sustituidas masivamente por computadores, y prcticamente desaparecieron al entrar en la dcada de los 70. En 1970 el parque de computadores e distribua as: Madrid 50%, Barcelona 34% y el resto lo tenan los grandes bancos del norte y algunas cajas de ahorros. Los minicomputadores surgieron a finales de los 60, como elemento de transicin entre las generaciones tercera y cuarta, con los circuitos integrados de media escala (MSI). Sus destinatarios fueron grandes y medianas empresas. Disponan de varias terminales y se organizaban en redes. Destaca la familia PDP 11 de la desparecida Digital Equipment Corporation. Computadores de cuarta generacin El elemento que provoc el nacimiento de esta generacin se considera habitualmente, aunque con cierta controversia, el microprocesador Intel 4004, desarrollado por Intel en 1971. El primer computador personal en EE.UU. fue el Altair 8800 (1974) diseado por David Roberts en la desaparecida empresa MITS. Microsoft tuvo el acierto de construir un intrprete BASIC para l, MITS sobrevivi un par de aos, pero Microsoft inici un despegue imparable, dando un gran salto al facilitar a IBM el sistema operativo MS-DOS para el PC, que a su vez lo adquiri a otra empresa. Las imgenes siguientes muestran microprocesadores bajo distintas

escalas de ampliacin.

En 1971 apareci el PET 2001 de Commodore, empresa absorbida por la holandesa Tulip muy conocida por su marca Conceptronics (y vuelta a vender en 2005 a Yeahronimo Media Ventures que quebr) y actualmente propiedad de Commodore Holdings Corporation, el TRS 80 de Radio Shack y el Apple II, fabricado en un garaje por dos jvenes norteamericanos: Steven Jobs (1955-) y Stephen Wozniak (1950-). A partir de 1980 se produce una eclosin de marcas. Destaca el Sinclair ZX80, precedente del 9

Ing. Nelly Cueva.


ZX81 y del Spectrum, fabricante absorbido por Amstrad, que consigui gran xito vendiendo productos de muy baja calidad fabricados en Corea. Amstrad, como es lgico, abandon la informtica, aunque sigue con equipos musicales y antenas de televisin, de muy baja calidad. En Agosto de 1981 se present el IBM PC, que dio lugar a la difusin masiva de la informtica personal. Sin embargo la microinformtica, contrariamente a lo que se cree, no comenz en EE.UU, pues en el ao 1973 se cre en Espaa, con la invencin del primer computador personal, el Kentelek 8, a cargo de la empresa Distesa (de la editorial Anaya), el creador fue Manuel Puigb Rocafort. Jordi Ustrell diseo posteriormente otro computador personal para la empresa catalana EINA. Por esta poca tambin surgieron en Francia los microcomputadores Micral Como se ha visto, desde el baco hasta las primeras calculadoras mecnicas pasaron 12 siglos, desde estas ltimas al primer computador transcurrieron dos siglos y desde el Mark I al primer microcomputador pasaron 28 aos. Desde entonces la velocidad de desarrollo es difcil de imaginar. Computadores de quinta generacin En octubre de 1981 el mundo de los computadores se vio sacudido por el anuncio hecho en Japn, de una iniciativa de investigacin y desarrollo orientada a producir una nueva generacin de computadores en la primera dcada de los aos de los 90, a los que se les dio el nombre de computadores de quinta generacin. Los computadores de esta generacin deberan de ser capaces de resolver problemas muy complicados, algunos de los cuales requieren toda la experiencia, capacidad de razonamiento e inteligencia de las personas para ser resueltos. Deberan de ser capaces de trabajar con grandes subconjuntos de los lenguajes naturales y estar asentados en grandes bases de conocimientos. A pesar de su complejidad los computadores de esta generacin se estn diseando para ser manejados por personas no expertas en informtica. Para conseguir estos fines tan ambiciosos estos equipos no tendrn un nico procesador, sino un gran nmero agrupado en tres subsistemas fundamentales: un sistema inteligente, un mecanismo de inferencia y una interfaz de usuario inteligente. Los avances se sitan en materia de teleinformtica, y una progresiva disminucin de tamao y coste del equipo, as como de tcnicas de programacin y desarrollo de inteligencia artificial, y de control de procesos (robotizacin). A los 10 aos, se vio el fracaso del proyecto, actualmente no estn desarrollados estos computadores, aunque se trabaj en distintos pases, cuyos programas de investigacin ms importantes fueron:

EE.UU.: Proyectos DARPA y MCC Unin Europea: Proyecto Sprit Reino Unido: Proyecto Alvey Japn: Proyecto ICOT

1.5. TIPOS DE COMPUTADORES Los ordenadores se pueden clasificar de acuerdo al Tipo de Datos y a la Capacidad de procesamiento. Segn el tipo de datos: Digitales: Dispositivos de clculo que procesan datos concretos, trabajan directamente contando nmeros (digitales) que representa cifras y letras y otros smbolos especiales.

10

Ing. Nelly Cueva.

Analgicas: O analticas, no calculan concretamente nmeros, en cambio lo hacen con variables que estn medidas en una escala y son registradas con un determinado grado de precisin. (no tan exactas como digitales) Hbridas: Las caractersticas deseables de las mquinas analgicas y digitales son combinadas algunas veces para crear este tipo de sistemas de cmputo.

Segn la capacidad de procesamiento: Microcomputadoras: Son las computadoras ms pequeas, menos costosas y ms populares en el mercado. Usa un solo procesador y consigue cubrir la gama ms baja. Hay dos tipos: Ordenador Personal PC: Fcil de usar y con grandes prestaciones. Tienen un puesto de trabajo. Estacin de Trabajo: PC conectado a travs de una red a una computadora mayor. Minicomputadoras: Diseadas para tareas especficas como el manejo de la comunicacin de datos, procesamiento de palabras y aplicaciones de multiusuarios. Mainframes: Realizan millones de operaciones por segundo y soportan un gran nmero de estaciones de trabajo. Son usadas en universidades, hospitales, etc. Supercomputadoras: son las ms rpidas y costosas, tienen muchos procesadores que trabajan en paralelo y pueden realizar billones de operaciones por segundo, lo que tomara semanas o meses en un PC.

En resumen la clasificacin de las computadoras desde diferentes puntos de vista es:

11

Ing. Nelly Cueva.


Actividades. 1. Elaboracin de una lnea de tiempo acerca de la evolucin de las computadoras hasta la actualidad. 2. Describa algunos de los beneficios e inconvenientes de la era de la informacin. CAPITULO II REPRESENTACIN DE LA INFORMACIN 2.1. INTRODUCCN Un computador es una mquina que procesa informacin. La ejecucin de una tarea implica la realizacin de unos tratamientos, segn especifica un conjunto ordenado de instrucciones (es decir, un programa) sobre unos datos. Para que el computador ejecute un programa es necesario darle informacin de dos tipos:

Instrucciones que forman el programa Los datos con los que debe operar ese programa

Uno de los aspectos ms importantes relacionado con la informacin, es cmo representarla. Normalmente se le da al computador en la forma usual escrita que utilizan los humanos, es decir, con ayuda de un alfabeto o conjunto de smbolos, los caracteres. Los caracteres que se utilizan para la representacin externa son:

Numricos: Constituidos por las diez dgitos en el sistema decimal Alfabticos: Letras maysculas y minsculas Especiales: Son smbolos no incluidos en los grupos anteriores, como: ), (, *, /, +, -, [, ]...

Al conjunto de los dos primeros grupos se le denominan caracteres alfanumricos. Veremos cmo estos caracteres usados en la representacin externa son representables en los computadores. Este paso de una representacin a otra se denomina codificacin y el proceso inverso decodificacin. Por lo tanto hay dos niveles en la representacin de la informacin

Nivel de representacin externa: usada por las personas e inadecuada para el computador Nivel de representacin interna: adecuada al computador y no inteligible directamente por el ser humano.

Las informaciones ms complejas se reducirn a un conjunto de informaciones elementales por tcnicas de codificacin. Los elementos bsicos que constituyen un computador son de naturaleza binaria, ya que slo pueden adoptar dos valores, 0 y 1 (corresponden a dos niveles de tensin, dos valores de corriente, dos situaciones de una lmpara... ). Al tener que traducir toda la informacin

12

Ing. Nelly Cueva.


suministrada a ceros y unos es necesario establecer una correspondencia entre el conjunto de todos los caracteres: {A, B, C, D,...Z, a, b, c,...z, 0, 1,...9, /, +,...} y el conjunto binario: {0, 1}n de forma que a cada elemento del primero le corresponda un elemento distinto del segundo.

Estos cdigos de transformacin se denominan cdigos entrada/salida (E/S) o externos y se pueden definir de forma arbitraria. Las operaciones aritmticas con datos numricos se suelen realizar en una representacin ms adecuada para este objetivo que la del cdigo de E/S. Por ello en el propio computador se efecta una transformacin entre cdigos binarios, obtenindose una representacin fundamentada en el sistema de numeracin en base dos, que al ser una representacin numrica posicional es muy apta para realizar operaciones aritmticas.

2.2. Cdigos de entrada/salida. Los cdigos de E/S o externos son cdigos que asocian a cada carcter una combinacin de bit. En otras palabras, un cdigo de E/S es una correspondencia entre los conjuntos: A = {0, 1,...9, A, B,...Z, a, b,...z, *, +, /...} Y B = {0, 1}n Si se usa un nmero fijo, n, de bit para codificar los smbolos de A, el valor mnimo de n depender del nmero m de elementos de A. As:

Con 2 bit (n=2) podemos hacer 4 combinaciones distintas y se pueden codificar hasta 4 smbolos (m=4) distintos Con 3 bit (n=3) podemos hacer 8 combinaciones distintas y se pueden codificar hasta 8 smbolos (m=8) distintos Con 4 bit (n=4) podemos realizar 16 combinaciones dise pueden codificar hasta 16 smbolos (m=16) distintos .... Con n bit pueden codificarse m = 2n smbolos distintos.

Para codificar m smbolos distintos necesitamos n bit, siendo, n = log2 m = 3.32 * log m Es decir, n debe ser el menor entero que verifique la relacin anterior. Ejemplo: Para codificar las 10 cifras decimales (0, 1,...,9) se necesitarn: n = 3.32 * log (m) = 3.32 * log (10) = 3.32 bit es decir 4 bit (ya que con 3 slo podremos codificar 8 smbolos).

13

Ing. Nelly Cueva.

Dos codificaciones posibles son las siguientes: Smbolos 0 1 2 3 4 5 6 7 8 Cdigo 1 0000 1000 0100 1100 0010 1010 0110 1110 0001 Cdigo 2 0000 0001 1001 1000 0101 0100 1100 1101 0011

9 1001 0010 Pueden hacerse codificaciones con ms bit de los necesarios; es decir, podramos establecer cdigos de E/S de forma totalmente aleatoria. Obviamente existen cdigos normalizados que suelen ser utilizados por los constructores de computadores, son conocidos como:

BCD de intercambio normalizado. EBCDIC ASCII ANSI

BCD DE INTERCAMBIO NORMALIZADO Usualmente este cdigo utiliza 6 bit, con lo que se pueden representar, m = 2 6 = 64 caracteres. A veces se aade a su izquierda un bit adicional para verificar posibles errores en la transmisin del cdigo (tema que se ver ms adelante) de forma que el carcter queda representado por n = 7 bit. bit de verificacin 6 5 4 3 2 1 0

Los bit 4, 5 son conocidos como bit de zona. Los bit de zona indican el tipo de carcter representado. Ejemplo: 00 para los numricos. Los bit 0, 1, 2, 3 son conocidos como bit de posicin, que coinciden para los caracteres numricos con la representacin en binario natural y para el 0 con la representacin del 10.

CODIGO EBCDIC (Extended Binary Coded Decimal Interchange). Utiliza n = 8 para representar cada carcter, pudiendo codificar hasta m = 2 8 = 256 smbolos distintos.

CODIGO ASCII (American Standard Code for Information Interchange) Utiliza 7 bit y es de los ms utilizados. Normalmente se incluye un octavo bit para detectar

14

Ing. Nelly Cueva.


posibles errores de transmisin o grabacin. Si el octavo bit se emplea para representar ms caracteres como letras griegas y smbolos semigrficos, se tiene el denominado ASCII extendido, usado en el PC de IBM y compatibles. CODIGO ANSI (American National Standards Institute - Instituto Nacional Americano de Estndares) El estndar ANSI especifica una serie de secuencias de escape, que hacen que el monitor se comporte de distintas formas. Por ejemplo, una secuencia de escape limpia la pantalla, mientras que otra hace que los siguientes caracteres se inviertan. 2.3. Sistemas de numeracin ms usuales Los computadores suelen efectuar las operaciones aritmticas utilizando una representacin para los datos numricos basada en el sistema de numeracin en base 2 (binario natural). Tambin se utilizan los sistemas de numeracin octal y hexadecimal, para obtener cdigos intermedios. Un nmero expresado en uno de estos cdigos puede transformarse a binario y viceversa. 2.3.1. Representacin posicional de los nmeros Se define un sistema de numeracin: como el conjunto de smbolos y reglas que se utilizan para la representacin de cantidades. En ellos existe un elemento caracterstico que define el sistema y se denomina base, siendo sta el nmero de smbolos que se utilizan para la representacin. Un sistema de numeracin en base "b" utiliza para representar los nmeros un alfabeto compuesto por b smbolos o cifras. As todo nmero se expresa por un conjunto de cifras, teniendo cada una de ellas dentro del nmero un valor que depende:

De la cifra en s De la posicin que ocupe dentro del nmero

En el sistema de numeracin decimal (base 10), que habitualmente se utiliza, b = 10 y el alfabeto por tanto, est constituido por 10 smbolos: {0, 1, 2..., 9}

Por ejemplo, el nmero 3278.52 puede obtenerse como suma de: 3000 200 70 8 0.5 0.02 3278.52

por tanto se verifica que: 3278.52 = 3 * 103 + 2 * 102 + 7 * 101 + 8 * 100 + 5 * 10-1 + 2 * 10-2

15

Ing. Nelly Cueva.

Cada posicin, por tanto, tiene un peso: Posicin 0 Peso b0 Posicin 1 Peso b1 Posicin 2 Peso b2 Posicin 3 Peso b3 .... Posicin -1 Peso b-1 Posicin -2 Peso b-2 ..... Generalizando se tiene que la representacin de un nmero en una base b: N = ...n4 n3 n2 n1 n0 n-1 n-2 ... es una forma abreviada de expresar su valor, que es: N = n4 b4 + n3 b3 + .... + n-1 b-1 + n-2 b-2

Ejemplo en base 8:

b = 8. Los smbolos que se usan son: {0, 1, 2, 3, 4, 5, 6, 7} El valor decimal del nmero octal 175.37 ser: 175.37)8 = 1*82 + 7*81 + 5*80 + 3*8-1 + 7*8-2 = 125.31)10 2.3.2 Sistema de numeracin en base dos. El sistema de numeracin en base dos, fue introducido por Gottfried Wilhelm Leibniz (16461716) en el siglo XVII, siendo el ms adecuado para usar en las mquinas electrnicas, debido a que utilizan esencialmente sistemas de dos estados, encendido y apagado. En el sistema binario los datos se representan en un sistema que slo admite dos estados, 0 y 1. Las operaciones aritmticas se suelen realizar usando una representacin de datos y resultados en binario natural. A) Definicin del sistema binario. En el sistema de numeracin binario b=2 y el conjunto de smbolos usados es: {0, 1} Una muestra de los nmeros enteros binarios que se pueden formar con 3 bit y que corresponden a las cifras decimales {0, ...,7} es: American National Standards InstituteAmerican National Standards Institute Binario Decimal 000 0

16

Ing. Nelly Cueva.

001 010 011 100 101 111 111 Ejercicios:

1 2 3 4 5 6 7

B) Transformaciones entre bases binaria y decimal. Se puede transformar un nmero binario a decimal sin ms que usar la expresin vista anteriormente: .n4 n3 n2 n1 n0 n-1 n-2...)2 = ...n4 24 + n3 23 + n2 22 + n1 21 + n0 20+ n-1 2-1 + = N)10 Ejemplo: Transformar a decimal los siguientes nmeros binarios: 110100)2 = 1*25 + 1*24 + 0*23 + 1*22 + 0*21 + 0*20 = 25 + 24 + 22 = 52)10 0.10100)2 = 0*20 + 1*2-1 + 0*2-2 + 1*2-3 + 0*2-4 + 0*2-5 = 2-1 + 2-3 = 0.625)10 10100.001)2 = 1*24 + 1*22 + 1*2-3 = 20.125)10

Para transformar un nmero decimal a binario: a) La parte entera del nuevo nmero (binario) se obtiene efectuando divisiones enteras (sin obtener decimales) por dos, de la parte entera del nmero decimal de partida y de los cocientes que sucesivamente se vayan obteniendo. Los restos de estas divisiones y el ltimo cociente (que sern siempre ceros y unos) son las cifras binarias. El ltimo cociente ser el bit ms significativo y el primer resto el bit menos significativo (ms a la derecha). Ejemplo: 26)10 es en binario: 26 | 2_ 0 13 | 2_ 1 6 | 2_ 0 3 |2_ 1 1 26)10 = 11010)2

b) La parte fraccionaria del nmero binario se obtiene multiplicando por 2 sucesivamente la

17

Ing. Nelly Cueva.


parte fraccionaria del nmero decimal de partida y las partes fraccionarias que se van obteniendo en los productos sucesivos. El nmero binario se forma con las partes enteras (que sern ceros y unos) de los productos obtenidos. Ejemplo: Transformar a binario natural el nmero decimal 0.1875 0.1875 *2 --------0.3750 0.3750 *2 ---------0.7500 0.7500 0.5000 *2 *2 ---------- ---------1.5000 1.0000

0.1875)10 = 0.0011)2 Ejemplo: Transformar a binario el nmero decimal 74.423 a) Parte entera: 74 | 2_ 0 37 | 2__ 1 18 | 2__ 0 9 | 2_ 1 4 | 2__ 0 2 | 2__ 0 1

b) Parte fraccionaria: 0.423 *2 -------0.846 Es decir: 74.423)10 = 1001010.01101...)2 Ejercicios a) Utilizando el mtodo del cociente, expresar en bases 2, los nmeros 33, 100 y 1023. b) Expresar en decimal los nmeros 11112, 11113, 11115 y CAFE16. c) Expresar 178 en base 5 y BABA13 en base 6. d) Pasar (1001 0110 1010 0101)2 y (1111 1011 0010 1101 0000 0110 0111)2 a base 4, 8 y 16 agrupando bits1. C) Operaciones aritmticas y lgicas con variables binarias Una variable binaria puede representar, una cifra de un nmero en el sistema de numeracin en base dos. Las operaciones aritmticas bsicas con variables binarias naturales son la suma, resta, 0.846 0.692 0.384 0.768 *2 *2 *2 *2 --------- --------- --------- --------1.692 1.384 0.768 1.536

18

Ing. Nelly Cueva.


multiplicacin y divisin. Estas operaciones son anlogas a las realizadas en decimal pero usando ceros y unos. Tabla de operaciones aritmticas: Suma aritmtica A B A+B 0 0 1 1 0 1 0 1 0 1 1 0 y llevo 1 A*B 0 0 0 1 Resta aritmtica A B A-B 0 0 1 1 0 1 0 1 0 1 y debo 1 1 0 Divisin aritmtica A B A/B 0 0 1 1 0 1 0 1 0 1

Producto aritmtico A 0 0 1 1 0 1 0 1

Ejemplo:

1110101 1110110 ------------11101011

1101010 - 1010111 ------------0010011

1101010 * 11 -----------1101010 + 1101010 --------------100111110

Las operaciones lgicas o booleanas con variables binarias son la suma lgica (+), llamada tambin funcin OR, el producto lgico (llamado tambin AND y la complementacin (-) o negacin o NOT. Las tablas son las siguientes: Suma lgica (OR) A B A+B 0 0 1 1 0 1 0 1 0 1 1 1 Producto lgico (AND) A B A*B 0 0 1 1 0 1 0 1 0 0 0 1

Complementacin (NOT) A -A 0 1 1 0

Es frecuente tambin la utilizacin de las operaciones combinadas como NAND (AND y NOT)

19

Ing. Nelly Cueva.


y NOR (OR y NOT). Las tablas son las siguientes: NAND A 0 0 1 1 B A * B -(A*B) 0 1 0 1 0 0 0 1 1 1 1 0 NOR A 0 0 1 1 B 0 1 0 1 A+B 0 1 1 1 - (A + B) 1 0 0 0

D) Representacin en complementos Para representar un nmero negativo se puede utilizar el complemento de ese nmero a la base. De esta forma las sumas y restas quedan reducidas a sumas. Este sistema de representacin es de sumo inters en el caso de los computadores ya que al usarlo se reduce la complejidad de los circuitos. El complemento a la base de un nmero, es el nmero que resulta de restar a cada una de las cifras del nmero N a la base menos uno del sistema que se est utilizando y posteriormente sumar uno a la diferencia obtenida. Ejemplo:

En base 10: Base menos uno del sistema: 9 Representar el nmero 63 en complemento a la base. 99 -63 -----36 36 +1 -----37

N = 63

Es decir, el complemento a 10 (base)del nmero 63 es 37.

En base 2: Base menos uno: 1 Complemento a 2 del nmero 10010 es 01110 11111 01101 - 10010 + 1 ------------------------01101 01110 Complemento a 2 del nmero 101010 es 010110 111111 101010 ----------010101 010101 + 1 -----------010110

20

Ing. Nelly Cueva.

Observamos que para transformar un nmero 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. Veremos ahora que la utilidad de esta representacin es para convertir la realizacin de las restas a sumas, lo cual simplifica el diseo del procesador. Ejemplo: Base 10 Supongamos que se ha de realizar la siguiente operacin: 77 - 63 Se puede hacer de dos formas diferentes: a) Directamente: 77 - 63 = 14 b) Utilizando el complemento a 10 del substraendo:

Complemento a 10 del substraendo 63 es 37

99 36 -63 +1 ---- ----36 37 77 +37 ----114 - (No se considera) El resultado es 14

Es decir, para restar basta con sumar el minuendo con el complemento a la base del substraendo y sin considerar el acarreo. Ejemplo: Base 2

Supongamos se ha de efectuar la siguiente resta:

11001 - 10010 Se puede hacer de dos formas: a) Directamente: 11001 -10010 -------00111 b) Usando el complemento a 2 del substraendo: El substraendo es 10010. Su complemento a 2 se obtiene cambiando 0 por 1 y 1 por 0. 01101

21

Ing. Nelly Cueva.

y sumndole 1 01101 + 1 -------01110

Ahora sumamos al minuendo el complemento a 2 del substraendo :

11001 +01110 --------100111 - (No se considera) Ejercicios: E) Cdigos intermedios Los cdigos intermedios se basan en la facilidad de transformar un nmero en base 2 a otra base que sea potencia de 2 y viceversa. Usualmente se usan como cdigos intermedios los sistemas de numeracin en base 8 y en base 16 (conocidos como octal y hexadecimal). a) OCTAL. En la base {0, 1,..., 7} octal, b = 8 y el conjunto de smbolos utilizados es:

Para convertir un nmero octal a binario slo debemos sustituir cada dgito octal por su equivalente binario. Equivalencias OCTAL 0 1 2 3 4 5 6 7 Ejemplo: 6 se sustituye por 110 2 se sustituye por 010 537.24)8 = 101 011 111 . 010 100)2 que equivale segn la tabla, a: 5 3 7 . 2 4 La conversin de binario a octal se realiza juntando en grupos de tres dgitos binarios, BINARIO 000 001 010 011 100 101 110 111

22

Ing. Nelly Cueva.


comenzando por la izquierda desde el punto decimal y sustituyendo cada grupo por el correspondiente dgito octal. Ejemplo: El nmero binario 10001101100.11010)2 es en octal 10 001 101 100 . 110 10 = 2154.64)8 Para pasar un nmero de octal a decimal aplicamos la expresin: N)8 =...n4 b4 + n3 b3 + .... + n-1 b-1 + n-2 b-2...)10 con b = 8. Ejemplo: Para pasar el nmero octal 1367.25)8 a decimal: 1367.25 = 1*83 + 3*82 + 6*81 + 7*80 + 2*8-1 + 5*8-2 = 759.328125)10 Para pasar un nmero entero decimal a octal se hacen sucesivas divisiones enteras del nmero y los subsiguientes cocientes por 8 (al igual que en binario). Para transformar la parte fraccionaria de un nmero decimal a octal se hacen sucesivas multiplicaciones por 8 (de la misma forma que en binario). Ejemplo: Para pasar el nmero decimal 760.33)10 a octal: 760 | 8__ 40 0 95 | 8__ 15 7 11 | 8__ 3 1 0.33 0.64 0.12 *8 *8 *8 ------ ------- ------2.64 5.12 0.96 0.96 *8 ------7.68

El nmero en octal es 1370.2507

b) HEXADECIMAL Para representar un nmero en base hexadecimal (b = 16) es necesario disponer de un conjunto o alfabeto de 16 smbolos. Se suele usar el conjunto: {0, 1, 2,..., 9, A, B, C, D, E, F} Podemos hacer las conversiones de binario a hexadecimal y viceversa en forma anloga al sistema octal. Ahora bien, aqu utilizaremos grupos de 4 bit en lugar de grupos de 3 bit. Equivalencias HEX BINARIO DECIMAL 0 0000 0

23

Ing. Nelly Cueva.

1 2 3 4 5 6 7 8 9 A B C D E F Ejemplo:

0001 0010 0110 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Pasar el nmero binario 010010111011111.1011101)2 a hexadecimal. 010 0101 1101 1111 . 1011 101)2 = 25DF.BA)16

Ejemplo: Pasar el nmero 1ABC701.C4)16 a binario: 0001 1010 1011 1100 0111 0000 0001 . 1100 0100 )2 1 A B C 7 0 1 C 4 El nmero binario resultante es: 0001101010111100011100000001.11000100)2

Para transformar un nmero hexadecimal a decimal aplicamos la expresin siguiente con b=16. N)16 =...n4 b4 + n3 b3 + .... + n-1 b-1 + n-2 b-2...)10 Ejemplo: Pasar el nmero hexadecimal A798C.1E)16 a decimal. 10*164 + 7*163 + 9*162 + 8*161 + 12*160 + 1*16-1 + 14*16-2 = = 686476.1171)10

Para pasar un nmero de decimal a hexadecimal se hace de forma anloga a los casos binario y octal: la parte entera se divide por 16, as como los cocientes enteros sucesivos, y la parte fraccionaria se multiplica por 16, as como las partes fraccionarias de los productos sucesivos. Ejemplo:

24

Ing. Nelly Cueva.

El nmero 4573.79)10 se corresponde en hexadecimal: 4573 |16 137 093 285 |16 13 125 13 17 |16 1 1 0.79 0.64 0.24 * 16 * 16 * 16 ------ ----- - ----474 384 144 +79 +64 +24 -----------12.64 10.24 3.84 C A 3 El nmero en hexadecimal es 11DD.CA3)16

2.4. Representacin de la informacin En la memoria y el procesador central la informacin se transmite y procesa en unidades denominadas palabras. La organizacin de las palabras depende del computador, siendo usuales las longitudes: 8, 16, 32, 36, 60 y 64 bit, aunque hay hasta de 512 bit. La memoria principal se encuentra organizada en palabras, cada una de las cuales tiene asignada una direccin. Los intercambios de informacin entre el procesador y la memoria se hacen en unidades denominadas palabras y no en caracteres (octetos) o en bit. Normalmente para aprovechar la memoria, la longitud de la palabra debe ser un mltiplo entero del nmero de bit usados para representar un carcter. Los datos se introducen inicialmente en el computador segn un cdigo de entrada/salida (que ya hemos visto), tanto si stos son de tipo alfabtico como de tipo numrico. Los datos de tipo numrico se utilizan normalmente para operar aritmticamente con ellos, y la representacin simblica obtenida con el cdigo de E/S no resulta adecuada para realizar este tipo de operaciones. Resulta ms adecuado operar en un sistema de numeracin que en un cdigo de E/S. Por los motivos anteriores, y teniendo en cuenta que la ALU opera con palabras, se realiza una conversin de notaciones pasando de la representacin simblica de E/S a otra notacin que denominamos representacin interna. TIPOS DE INFORMACION. En un sistema de procesamiento de la informacin es necesaria la codificacin de tres clases de informacin:

1 Informacin numrica: 25

Ing. Nelly Cueva.


Enteros Reales Complejos Lgicos

2 Informacin no numrica (o alfanumrica): Caracteres

3 Instrucciones del programa

A) Datos de tipo complejo Los datos de tipo complejo se representan por parejas de nmeros reales almacenados en posiciones consecutivas de memoria. Es decir, pueden considerarse como un caso particular de nmeros reales. B) Datos de tipo lgico Representan un valor del Algebra de Boole binaria, es decir, 0 (falso) 1 (verdad). C) Representacin en punto fijo El nombre de esta representacin surge al considerar el punto fraccional, situado en una posicin fija. El punto fijo es utilizado para la representacin de nmeros enteros, suponindose el punto fraccional ubicado a la derecha de los bit. Cualquiera de los sistemas de representacin de enteros es una representacin de punto fijo. Tambien, se puede utilizar la representacin en punto fijo para representar fracciones binarias escalando los nmeros, de modo que el punto fraccional quede ubicado implcitamente en otra posicin entre los bit, y en el caso lmite a la izquierda de todos ellos describiendo un nmero fraccional binario puro (menor a 1). a) El signo se representa en el bit situado ms a la izquierda de la palabra. Este bit es 0 si el nmero es positivo 1 si el nmero es negativo. b) El valor absoluto: b1) Nmeros positivos: Se almacenan directamente el nmero en binario natural. b2) Nmeros negativos: Dependiendo del computador se almacena el complemento a 2 del nmero binario natural o la magnitud del nmero en binario natural.

Ejemplo de representacin interna de datos de tipo entero en un computador de palabras de 4 bit: DECIMAL 7 6 5 4 3 SIGNO MAGNITUD 0111 0110 0101 0100 0011 Y COMPLEMENTO A2 0111 0110 0101 0100 0011

26

Ing. Nelly Cueva.

2 1 +0 -0 -1 -2 -3 -4 -5 -6 -7 -8

0010 0001 0000 1000 1001 1010 1011 1100 1101 1110 1111 -----

0010 0001 0000 ---1111 1110 1101 1100 1011 1010 1001 1000

Ejercicios Realizar las siguientes sumas de precisi_on _ja, sin convertir a decimal. Indicar en cada caso si hubo acarreo. 1000012 1000012 011112 999916 F0F0 16 + 0111102 + 0111112 + 011112 + 111116 + F0CA16

D) Representacin en punto flotante El punto flotante surge de la necesidad de representar nmeros reales y enteros con un rango de representacin mayor que el que ofrece la representacin en punto fijo y posibilitar al computador el tratamiento de nmeros muy grandes y muy pequeos. Estas ventajas que ofrece el punto flotante traen como contraprestacin una disminucin en la precisin de los nmeros representados. En su representacin se utiliza la notacin cientfica o exponencial matemtica en la que una cantidad se representa de la siguiente forma: n = mantisa * base de exponenciacin exponente Un nmero en esta notacin tiene infinitas representaciones, de las que se toma como estndar la denominada normalizada, que consiste en que la mantisa no tiene parte entera y el primer dgito o cifra a la derecha del punto decimal es significativo (distinto de 0), salvo en la representacin del nmero 0. Ejemplo (^ significa elevado a): 835.4 = 8354*10^-1 = 835.4 * 10^0 = 83.54 * 10^1 = 8.354 * 10^2 = .8354 * 10^3 Representacin del nmero decimal 835.4 con base de exponenciacin 10. Siendo esta ltima expresin la que corresponde al nmero normalizado. En este sistema de codificacin, se dividen los bit disponibles en la palabra o doble palabra del computador entre la mantisa y el exponente, teniendo una base de exponenciacin determinada (2 o potencia de 2). Normalmente la definicin de la coma flotante sigue las siguientes reglas:

27

Ing. Nelly Cueva.

El exponente se representa en uno de los siguientes sistemas de codificacin: mdulo y signo o exceso a 2 n-1, siendo siempre un nmero entero. En este sistema de codificacin el exponente tambin recibe el nombre de caracterstica. La mantisa es un nmero real con el punto decimal implcito a la izquierda de sus bit, representada normalmente en uno de los siguientes sistemas de codificacin: mdulo y signo, complemento a 1 o complemento a 2. La base de exponenciacin es una potencia de 2 determinada por el fabricante del equipo (2, 8 o 16).

Existen muchas formas de representacin en punto flotante, variando la longitud de la palabra del computador, la base de la exponenciacin, el nmero de bit reservados para la mantisa y para el exponente, el sistema utilizado para representar la mantisa y el exponente, etc.. El punto flotante se define particularmente en cada caso. Las definiciones ms comunes son las siguientes: a) para simple precisin (32 bit) signo exponente mantisa 31 30 23 22 0

b) para doble precisin (64 bit) signo exponente mantisa 63 62 52 51 0

El rango de representacin en la coma flotante debe ser analizado teniendo en cuenta los mximos y mnimos valores representables tanto con signo positivo como negativo: mnimo nmero negativo = -(mantisa mxima) * basemximo exponente mximo nmero negativo = -(mantisa mnima) * base-maximo exponente mnimo nmero positivo = mantisa mnima * base-mximo exponente mximo nmero positivo = mantisa mxima * basemximo exponente Conviene observar que existen cuatro zonas de nmeros que no pueden ser representados mediante un determinado formato de coma flotante. Estas zonas estn ubicadas cercanas al 0, tanto para valores positivos como negativos (subdesbordamiento positivo o negativo), como para valores grandes (positivos) o pequeos(negativos) que exceden el rango de representacin. Ejemplo Un computador utiliza el siguiente formato para registrar nmeros en punto flotante:

los bit del 23 al 30 se utilizan para representar el exponente en exceso a 128 (2 7) los bit del 0 al 22 se utilizan para representar la mantisa normalizada para el sistema Mdulo y signo el bit 31 se utiliza para representar el signo de la mantisa (0 para el +) la base de exponenciacin es 2

28

Ing. Nelly Cueva.

el 0 se representa con todos los bit en 0.

Representar en este formato el nmero 12:


12 en notacin normalizada de base 2 es 0.75 * 24 el exponente de valor 4 en exceso a 128 es: 10000100 la mantisa 0.75 en binario es 0.11

de donde la representacin del nmero 12 quedar como: 0 10000100 11000000000000000000000

signo (+) exponente 4 mantisa 0.75 Representar en el formato definido el 12. En este caso la notacin normalizada solo sufre cambio en el signo de la mantisa (-0.75 * 24), la expresin quedar ntonces: 1 10000100 11000000000000000000000

signo (-) exponente 4 mantisa 0.75 El rango de representacin de este formato en coma flotante ser: mnimo negativo = -(1 - 223)*2127 = -2127 = 1.701411834605 * 1038 mximo negativo = -0.5 * 2-128 = -2-129 = -1.469367938528 * 10-39 mnimo positivo = 0.5 * 2-128 = 2-129 = 1.469367938528 * 10-39 mximo positivo = (1 - 223)*2127 = 2127 = 1.701411834605 * 1038 E) Datos de tipo carcter Los datos de tipo carcter, representan sencillamente cadenas de caracteres representados segn el cdigo de E/S. A las representaciones de los caracteres se les imponen las siguientes condiciones:

Deben englobar las 26 letras del alfabeto latino, los 10 dgitos y un cierto nmero de caracteres grficos (operadores) y signos de puntuacin. Deben permitir aadir nuevos caracteres especficos. Deben incluir un sistema de redundancia que permita la deteccin de errores en el curso de la transmisin. Los subconjuntos de letras y nmeros deben estar ordenados y ser coherentes. Estarn en dos grupos diferentes y ordenados.

F) Codificacin de instrucciones Las instrucciones llevan cierto nmero de informaciones:


Cdigo de operacin. Direccin de operandos/resultados. Condiciones de direccionamiento, etc.

29

Ing. Nelly Cueva.


A cada una de estas informaciones se le asocia una zona formada por un nmero de bit suficientes para codificar los diferentes estados posibles de la instruccin. As una zona de cdigo de operacin de 6 bit permite codificar 2 6 = 64 operaciones diferentes, y si una zona de direcciones es de 16 bit permitir direccionar una memoria de 216 direcciones. Ejercicios. 1. PROBLEMA Obtener la representacin en signo magnitud del nmero decimal -3675. Suponer que tiene que almacenarse en 16 bits (Sol: 1 000 1110 0101 1011) a) Y si tuviera que almacenarse en 32 bits? 2. PROBLEMA Obtener la representacin en complemento a dos del nmero decimal 3675. Suponer que tiene que almacenarse en 16 bits ( Sol: 1111 0001 1010 0101 ) Y si tuviese que almacenarse en 32 bits? 3. PROBLEMA Obtener la representacin en complemento a dos del nmero decimal 3675. Suponer que tiene que almacenarse en 16 bits ( Sol: 1111 0001 1010 0101 ) Y si tuviese que almacenarse en 32 bits?PROBLEMA. Que representa 0 00100101 1100000000000? 4. PROBLEMA Dados los datos en complemento a dos: A=010011 B=010111 Calcular paso a paso en complemento a dos: o A+B o -A-B o A-B PROBLEMA Dados los datos en complemento a uno: A=011011 B=000011 Calcular en complemento a uno, las mismas operaciones que en el problema anterior.

5.

Nota para los dos problemas 4 y 5: Expresar el resultado en 6 bits dejando ver los pasos seguidos al operar e indicando, en su caso, si hubo overflow y si se tiene en cuenta el acarreo.

30

Ing. Nelly Cueva.


CAPITULO III 3.1. Elementos fsicos y lgicos de un ordenador: Hardware y Software HARDWARE: Elementos fsicos (o material) del sistema computador, ya sean elctricos, electrnicos, mecnicos o magnticos: teclado, monitor, disqueteras, disquetes, impresoras,... Representa la fuerza. SOFTWARE: Todo lo que no tiene cualidades lgicas, como los datos o programas. Representa la inteligencia. El hardware es lo que golpeamos cuando el software se cuelga Hardware: Bsicamente podemos dividir el hardware en: C.P.U: Unidad Central de Proceso. Perifricos o Unidades de Entrada / Salida.

Comunicacin del cerebro con sus perifricos computador

Diversos perifricos de un

Haciendo un smil entre un ordenador y una persona, encontramos que en ambos hay un centro neurlgico y unos medios de comunicacin de ese centro con el exterior, es decir, unas vas de entrada, de salida y de almacenamiento. CPU: En una persona el centro neurlgico sera el cerebro, mientras que en el ordenador ser la CPU (del ingls Central Process Unit o UCP: unidad central de procesamiento). Es la parte del ordenador que se encarga de controlar, supervisar y realizar todas las acciones. En la CPU se distinguen: Unidad de Control: Su funcin es dirigir al resto de las unidades e interpretar las instrucciones recibidas. Unidad Aritmtico Lgica o ALU: Realiza operaciones matemticas y lgicas segn los datos o instrucciones recibidas de los programas. Suma, resta, multiplica, niega sentencias, realiza comparaciones, etc. Memoria Principal (o Central): Almacena la informacin. Contiene los datos y programas que van a ser ejecutados. La capacidad de memoria se mide en mltiplos de Bytes.

31

Ing. Nelly Cueva.


Los componentes de Hardware de un computador los podemos agrupar, esquematizar y describir en forma general como sigue:

3.2 Perifricos De Un Computador Definicin. Se denominan perifricos tanto a los dispositivos a travs de los cuales el computador se comunica con el entorno exterior, como a los sistemas que almacenan la informacin, sirviendo de memoria auxiliar a la memoria principal, independientemente de que se encuentre en el exterior o interior de la carcasa. La memoria masiva o auxiliar trata de suplir las deficiencias de la memoria central (RAM): baja capacidad y que la informacin almacenada se pierde al desconectar la alimentacin elctrica. En efecto, los dispositivos de memoria masiva auxiliar (actualmente soportes magnticos, pticos y de electrnica de estado slido) tienen mucha ms capacidad que la memoria principal, y en ellos se puede grabar la informacin durante mucho tiempo. Segn la definicin de perifrico vista previamente, estn constituidos por unidades de entrada, unidades de salida y unidades de memoria masiva auxiliar. Estas ltimas tambin pueden considerarse como de E/S, ya que el computador central puede escribir (dar salida) sobre ellas, y la informacin escrita puede ser leda, es decir, ser proporcionada como entrada. Ahora bien, la informacin grabada en estos soportes no es directamente inteligible para el usuario, esto es, no puede haber una intercomunicacin directa usuario-computador como la que se da a travs de un teclado/pantalla.

El computador es una mquina que no tendra sentido si no se comunicase con el exterior, es decir, si careciese de perifricos. Por lo que debe disponer de:

Unidad(es) de entrada, a travs de la(s) cual(es) introducirle los programas que queramos que ejecute y los datos correspondientes. 32

Ing. Nelly Cueva.


Unidad(es) de salida, con la(s) que la computadora da los resultados de los programas. Memoria masiva o auxiliar, que facilite su funcionamiento y utilizacin.

Los dispositivos de entrada/salida (E/S) transforman la informacin externa en seales codificadas, permitiendo su transmisin, deteccin, interpretacin, procesamiento y almacenamiento de forma automtica. Los dispositivos de entrada transforman la informacin externa (instrucciones o datos tecleados) segn alguno de los cdigos de entrada/salida (E/S). As el computador recibe dicha informacin adecuadamente preparada (en binario). En un dispositivo de salida se efecta el proceso inverso, la informacin binaria que llega del computador se transforma de acuerdo con el cdigo de E/S en caracteres escritos inteligibles por el usuario. Hay que distinguir claramente entre perifricos de un computador y mquinas auxiliares de un determinado servicio informtico, las mquinas auxiliares no estn fsicamente conectadas al ordenador (su funcionamiento es autnomo) y sirven para preparar o ayudar en la confeccin o utilizacin de la informacin que se da a, o produce, el ordenador. Por ejemplo, al inicio de la informtica existan mquinas autnomas para perforar tarjetas, grabar cintas magnticas manualmente a travs de un teclado, separar el papel continuo producido por un programa a travs de la impresora, etc.

Tampoco hay que confundir perifrico con soporte de informacin. Por soporte de informacin se entiende aquellos medios fsicos sobre los que se almacena la informacin. Por unidades o dispositivos perifricos se entiende aquellos elementos encargados de transcribir la informacin al correspondiente soporte. Ejemplos: - Los disquetes y DVD-ROM son soporte de informacin, mientras que la unidad lectora o disquetera, es unidad perifrica. - El papel de impresora es soporte de informacin y la impresora unidad perifrica. Conexin de perifricos al computador Las unidades funcionales del computador, as como stas con los perifricos se comunican por grupos de pistas denominados buses. Hay de dos tipos, serie y paralelo. Los perifricos se interconectan al bus del sistema directamente o bien a travs de unos circuitos denominados interfaces. Hay una gran diversidad de perifricos con distintas caractersticas elctricas y velocidades de funcionamiento. Las interfaces son para adaptar las caractersticas de los perifricos a las del bus del sistema. Caractersticas generales de los perifricos Cada perifrico suele estar formado por dos partes diferenciadas en cuanto a su misin y funcionamiento: una parte mecnica y otra electrnica.

La parte mecnica est formada bsicamente por dispositivos electromecnicos (conmutadores manuales, motores, electroimanes, etc.) controlados por los elementos electrnicos. Esta parte determina la velocidad de funcionamiento. La parte electrnica gestiona el funcionamiento de los procesos.

Desde el computador se acta sobre los perifricos a iniciativa de las instrucciones de los

33

Ing. Nelly Cueva.


programas. Para poder utilizar eficazmente una computador, su sistema operativo contiene rutinas especficas para la gestin de los perifricos. Sin estas rutinas sera extremadamente complejo utilizar un perifrico desde un lenguaje de programacin de alto nivel. Algunos perifricos tienen la posibilidad de realizar autnomamente determinadas operaciones. stas pueden ser desde autocomprobar su funcionamiento fsico, hasta funciones ms complejas como rebobinar una cinta magntica, dibujar en un registrador grfico la informacin contenida en una cinta magntica o imprimir una imagen desde la tarjeta de la mquina de fotografa digital. Clasificacin de los perifricos Los perifricos se dividen en tres categoras, ya conocidas:

Unidades de entrada. Unidades de salida. Unidades de memoria masiva auxiliar.

3.3. DISPOSITIVOS DE ENTRADA Los perifricos ms usuales son los siguientes: introducen informacin al ordenador (teclado).

Teclado Ratn (mouse) Joystick o palanca manual de control Lpiz ptico Lector ptico Lector de caracteres imanables Lector de bandas magnticas Lector de tarjetas chip o inteligentes (Smart Card) Lector de marcas Lector de caracteres manuscritos Lector de cdigos de barras Reconocedores de voz Sistemas biomtricos Digitalizador o tableta grfica Pantalla sensible al tacto Scanner o rastreador Sistemas de radiofrecuencia (RFID)

TECLADO Es un dispositivo anlogo al de una mquina de escribir, correspondiendo cada tecla a uno o varios caracteres, funciones u rdenes. Para seleccionar uno de los caracteres de una tecla puede ser necesario pulsar simultneamente dos o ms teclas. Al pulsar una tecla se cierra un conmutador que hay en el interior del teclado, esto hace que unos circuitos codificadores generen el cdigo de E/S correspondiente al carcter seleccionado, apareciendo ste en la pantalla si no es un carcter de control. Los teclados contienen los siguientes bloques de teclas:

34

Ing. Nelly Cueva.

Teclado principal: Contiene los caracteres alfabticos, numricos y especiales, como en una mquina de escribir convencional con alguno adicional. Hay teclados que tambin incluyen aqu caracteres grficos. Teclas de desplazamiento del cursor: Permiten mover el cursor en los cuatro sentidos, borrar un carcter o parte de una lnea. Teclado numrico: Es habitual en los teclados de computador que las teclas correspondientes a los caracteres numricos (cifras decimales), signos de operaciones bsicas (+, -, ...) y punto decimal estn repetidas para facilitar al usuario la introduccin de datos numricos. Teclas de funciones: Son teclas cuyas funciones son definibles por el usuario o mediante un programa.

Teclas de funciones locales: Controlan funciones propias del terminal, como impresin del contenido de imagen cuando el computador est conectada a una impresora.

RATN El ratn es un pequeo perifrico que inicialmente tenan una esfera que puede girar libremente, se acciona hacindola rodar sobre una superficie plana. Los modernos se basan en un sistema ptico de diodo o lser de infrarrojo en lugar de la bola. En el momento de activar el ratn, se asocia su posicin con la del cursor en la pantalla y si lo desplazamos sobre una superficie, el cursor seguir dichos movimientos. Actualmente es imprescindible en los entornos grficos, como KDE, Gnome y Windows. LPIZ OPTICO Fsicamente tiene la forma de una pluma o lpiz grueso, de uno de cuyos extremos sale un cable para unirlo al monitor. Contiene un pulsador, transmitindose informacin hacia el monitor slo en el caso de estar presionado. Al activar el lpiz ptico frente a un punto de la pantalla se obtienen las coordenadas del sitio donde apuntaba el lpiz.

JOYSTICK. (Palanca manual de control) La palanca manual de control (en ingls joystick) est constituida por un dispositivo con una palanca o mando mvil. El usuario puede actuar sobre el extremo de la palanca, y a cada posicin de ella le corresponde sobre la pantalla un punto. Dispone de un pulsador que debe ser presionado para que exista una interaccin entre el programa y la posicin de la palanca. La informacin que transmite es analgica. Su uso ha sido popularizado por los videojuegos y aplicaciones grficas. Y otras unidades que se debe considerar como: Lector de marcas Lector de caracteres magnticos

35

Ing. Nelly Cueva.


Detector de bandas magnticas Lector de tarjetas chip o inteligentes Lector ptico Reconocedores de voz Sistemas biomtricos Pantalla sensible al tacto Digitalizador Escaner Sistemas de radiofrecuencia (rfid)

3.4. DISPOSITIVOS DE SALIDA Obtienen informacin al computador (pantalla). A continuacin se presentan algunos de estos dispositivos: SINTETIZADOR DE VOZ Las unidades sintetizadoras de voz son dispositivos que dan los resultados de un programa emitiendo sonidos (fonemas o palabras) similares al habla humana. Estos perifricos suelen incluir un microprocesador, memoria con programas y datos, un conversor D/A (digitalanalgico), un amplificador de audiofrecuencia y altavoz. La mayor parte de los sintetizadores de voz tienen memorizados digitalmente cada uno de los fonemas o palabras que son capaces de emitir. Los datos que recibe un sintetizador procedentes del computador corresponden a la identificacin de los fonemas o palabras a emitir. Una vez que se analiza el dato, se activa una rutina encargada de generar el sonido correspondiente. Los sonidos resultan "metlicos". Por lo general, estos sistemas incluyen programas que enriquecen las posibilidades de los mismos, como generar frases o combinaciones de palabras, incluso hay sistemas que traducen cantidades.

VISUALIZADORES ("DISPLAYS") Los visualizadores son pequeas unidades de salida que permiten al usuario leer una instruccin, un dato o un mensaje. Los caracteres se forman partiendo de estructuras en mdulos, cada uno de los cuales sirve para visualizar un carcter. Cada mdulo contiene una serie de segmentos, siendo los ms habituales de siete. Un carcter concreto se visualiza activando determinados segmentos, dependiendo de la forma del smbolo. El visualizador es el elemento de salida tpico de las calculadoras de bolsillo y de los relojes digitales. TRAZADOR DE GRAFICOS Los trazadores de grficos (plotters) son dispositivos de salida que realizan dibujos sobre papel. Tienen gran importancia ya que con ellos se obtienen directamente del computador planos, mapas, dibujos, grficos, esquemas e imgenes en general. El funcionamiento se controla desde programa. El usuario puede incluir instrucciones para realizar las representaciones que desee con sus datos. Los registradores grficos se fundamentan en el desplazamiento relativo de un cabezal con el elemento de escritura, con respecto al papel. Dependiendo del tipo de grfico se mover slo la

36

Ing. Nelly Cueva.


cabeza, o la cabeza y el papel. Segn la forma en que se realiza el dibujo, los registradores se pueden clasificar en tres tipos:

De pluma. Electrostticos. De inyeccin

En los registradores de pluma el dibujo se realiza mediante un cabezal en el que se insertan plumas, bolgrafos o rotuladores. Cada elemento de escritura puede subirse o bajarse hasta entrar en contacto con el papel, todo ello controlado por programa. Los registradores electrostticos son impresoras electrostticas. El sistema de traccin de papel es similar al de una impresora convencional. El dibujo se realiza lnea a lnea. El elemento de escritura est constituido por una serie de agujas cuya densidad puede variar. Por lo que respecta a los de inyeccin, trabajan de forma anloga a una impresora de tinta, que se describen en el apartado correspondiente. MONITORES Hasta hace poco tiempo el tipo ms habitual de pantalla era la que vemos en los computadores de sobremesa, la de tubo de rayos catdicos (TRC), aunque cada vez se difunden ms las de cristal lquido, habituales en los equipos porttiles.

La imagen de una pantalla TRC se forma al incidir un haz deelectrones sobre la superficie interna de la pantalla que est recubierta de un material fosforescente, analogamente a como se forman las imagenes en un televisor. Un campo electromagntico desplaza el haz de electrones de izquierda a derecha y de arriba a abajo y, dependiendo de la intensidad con la que inciden los electrones en la pantalla as de brillante ser cada punto generado. La imagen, para ser visualizada durante un determinado tiempo debe ser repetida o refrescada peridicamente (al menos 25 veces por segundo). Estas pantallas se denominan pantallas de barrido. Una imagen de pantalla no es continua sino que se forma por multitud de puntos de imagen ("pixel"). La pantalla est dividida en celdas (mediante una rejilla metlica o si es tecnologa Trinitron mediante unos alambres), en cada una de las cuales puede ir un carcter. La celda est constituida por una matriz regular de puntos de imagen. Las pantallas se clasifican, segn la capacidad o no de mostrar colores, en:

Monocroma: Los colores usuales en una monocromtica son el blanco, mbar o verde. Color: El color de cada punto se obtiene con mezcla (RGB) de los colores rojo, verde y azul, pudindose programar la intensidad de cada color bsico.

Segn su capacidad de representacin se pueden clasificar en:


De caracteres: Slo admiten caracteres. Grficas: Permiten trazados de lneas y curvas continuas.

37

Ing. Nelly Cueva.


En las pantallas de caracteres, la memoria de imagen (que es especfica o una parte de la memoria RAM) almacena la informacin correspondiente a cada celda (cdigos de caracteres y sus atributos). En la memoria ROM estn los patrones de los caracteres, representados como una matriz de puntos. Se denomina generador de caracteres a esta memoria de slo lectura. En las pantallas grficas el usuario tiene acceso al punto de imagen, pudiendo representar en ellas imagenes configuradas no slo con las formas de caracteres incluidos en la ROM. En este caso, la memoria de imagen contiene la informacin correspondiente a cada punto de imagen (intensidad, color y otros posibles atributos), en vez de la correspondiente a cada celda. Los dibujos, a pesar de estar formados por puntos de imagen presentan una apariencia de lneas continuas. La calidad de la pantalla grfica depende de la densidad de puntos de imagen. Los principales parmetros que caracterizan a una pantalla son:

Tamao: Se da en funcin de la longitud de la diagonal principal, y se tiene la mala costumbre de darla en pulgadas, que no es una unidad del Sistema Internacional de Unidades (SI). Las ms habituales son las de 431.8 mm (17"), aunque en muchos pases se estn utilizando superiores. Nmero de celdas o caracteres: Lo usual es una representacin de 24 filas por 80 columnas de caracteres. Resolucin: Es el nmero de puntos de imagen en pantalla. No depende del tamao de la pantalla. Usualmente se consideran bsicamente tres tipos de resolucin (hay resoluciones superiores):

# CGA 640*200 # VGA 640*480 # HGC 720*350 (Hercules) # SVGA(XGA) 1024*768 # SXGA 1280*1024 # UXGA 1600*1200 # WUXGA 1920*1200 # QXGA 2048*1536 IMPRESORAS Las impresoras son perifricos que escriben la informacin de salida sobre un soporte fsico. Su comportamiento inicialmente era muy similar al de las mquinas de escribir, pero actualmente son mucho ms sofisticadas, incluso algunas son fotocopiadoras o fax, conectadas con el computador. Junto a las pantallas, los dispositivos ms utilizados para poder ver en forma inteligible los resultados de un programa de computador. Las impresoras tienen dos partes diferenciadas: la parte mecnica (alimentacin y arrastre) y la parte electrnica. Las impresoras tradicionalmente utilizaban papel continuo, en cuyos mrgenes existen unos taladros. En este caso, el arrastre se efecta por un tractor que dispone de unos dientes metlicos que encajan en los taladros laterales del papel. Actualmente la mayora no necesitan papel continuo, efectundose el arrastre por friccin o presin, como en el caso de las mquinas de escribir o en las fotocopiadoras convencionales. Clasificacin y tipos de impresoras Existen diversos criterios para clasificar las impresoras.

38

Ing. Nelly Cueva.


Calidad de impresin: Considera la calidad de presentacin y de contraste de los caracteres impresos. Las impresoras se clasifican en:

Normales: Como las impresoras de lnea, de rueda y trmicas. Semicalidad. Como algunas impresoras matriciales. Calidad: Como las de margarita (obsoletas), tinta y lser.

Fundamento del sistema de impresin Hay impresoras que realizan la impresin por impacto de martillos o piezas mviles mecnicas, y otras sin impacto mecnico. El fundamento de las impresoras por impacto es similar al de las mquinas de escribir. Sobre la superficie de la lnea a imprimir en el papel se desliza una cinta entintada, y delante de sta pasa una pieza metlica donde est moldeado el juego de tipos de impresin. Cuando pasa el tipo a grabar sobre su posicin en el papel, se dispara un "martillo" que golpea la cinta contra el papel, quedando impreso en tinta sobre el papel el carcter en cuestin. En otras impresoras de impacto cada carcter se crea por el disparo de ciertas agujas metlicas que conforman el carcter con un conjunto de puntos. Las impresoras de impacto son muy ruidosas y tradicionalmente han sido las ms utilizadas. Entre ellas se encuentran las impresoras de rueda, bola, margarita, matriciales, cilindro y cadena. Las impresoras sin impacto forman los caracteres sin necesidad de golpes y utilizan otros principios fsicos para transferir las imagenes al papel. Son impresoras sin impacto las trmicas, de inyeccin de tinta, de sublimacin y las lser. PARAMETROS QUE CARACTERIZAN A UNA IMPRESORA Velocidad de escritura Normalmente la velocidad de impresin se da en las siguientes unidades:
o o o

Impresoras de caracteres: Caracteres por segundo (cps). Impresoras de lneas: Lneas por minuto (lpm). Impresoras de pginas: Pginas por minuto (ppm).

Caracteres por lnea Es el nmero mximo de caracteres que se pueden escribir en una lnea. Ancho del papel o longitud del carro Se suele dar en pulgadas. Densidad de lneas Se expresa normalmente en lneas por pulgada e indica el espaciado entre lneas. Tipos de letras Una misma impresora puede escribir con distintos tipos de letras. Las de agujas usualmente pueden escribir en tamao normal, comprimido y elongado. El cambio del tipo de letra se realiza por programa.

39

Ing. Nelly Cueva.

Color Es la posibilidad de imprimir en colores. Usualmente los colores se forman a partir de tres bsicos (como en los monitores en color), pero a partir del cian, magenta y amarillo. Resolucin Una gran parte de impresoras forman los caracteres por unin de puntos. La resolucin se suele dar en nmero de puntos por unidad de superficie 3.5. DISPOSITIVOS DE ALMACENAMIENTO Dispositivos de memoria secundaria: Sirven para guardar la informacin que no est siendo utilizada en el momento. Una caracterstica que distingue un soporte de almacenamiento de los de entrada o de salida (aparte de la posibilidad de realizar operaciones de entrada/salida indistintamente) es que en el soporte de almacenamiento los datos son legibles slo por la mquina y no lo son directamente por el hombre. Mientras los dispositivos de memoria permiten un acceso inmediato del programa a la informacin que contienen, los de almacenamiento guardan la informacin en un soporte que no permite el acceso inmediato desde el programa y se requiere un paso previo de lectura (o entrada) que recupera dicha informacin desde el almacenamiento y lo lleva a la memoria. Si la memoria de los ordenadores tuviera gran capacidad y no fuera voltil no seran precisos sistemas de almacenamientos externos. Si se han inventado distintos tipos de dispositivos de almacenamiento de los datos es por la imposibilidad de disponer de memoria con capacidad suficiente. Sacrificando la inmediatez del acceso se obtienen capacidades muchsimo mayores a precios muy inferiores y con tiempos de respuesta aceptables para cada tipo de aplicacin. Los soportes magnticos son el medio ms usual de almacenar la informacin. Entre la variedad existente, destacan: cinta, disco y disquete. Las principales caractersticas de estos soportes son:

Reutilizabilidad (salvo en los primitivos). Elevada capacidad de almacenamiento. No voltiles. Ms econmicos que la memoria central (RAM).

DISCOS MAGNETICOS Los discos magnticos son los sistemas de almacenamiento que en la actualidad tienen ms importancia, ya que constituyen el principal soporte utilizado como memoria masiva. A pesar de que son ms costosos que las cintas, son de acceso directo, y con ellos se consiguen tiempos medios de acceso mucho menores que con las cintas. Un disco est constituido por una superficie metlica o plstica recubierta por una capa de una sustancia magntica. Los datos se almacenan mediante pequeos cambios en la imanacin, en uno u otro sentido. El plato o disco puede ser de plstico flexible o rgido, en el primer caso tenemos disquetes o discos flexibles (en ingls floppy disk o diskettes) y en el segundo caso discos rgidos o duros. Tanto en los discos rgidos como en los flexibles la informacin se graba en

40

Ing. Nelly Cueva.


circunferencias concntricas, no percibindose visualmente. Cada una de estas circunferencias constituye una pista. As mismo el disco se considera dividido en arcos iguales denominados sectores, de esta forma cada pista est compuesta de sectores. Los sectores de las pistas ms exteriores son de mayor longitud que las interiores, ahora bien el nmero de bits grabados en cada sector es siempre el mismo, con lo que la densidad de grabacin ser mayor en las pistas interiores que en las exteriores. Los sectores comienzan con una cabecera de identificacin, indicando su direccin completa. Un cilindro es un conjunto de pistas, una en cada disco, que son accesibles simultneamente por el conjunto de cabezas.

La lectura y escritura en la superficie del disco se hace mediante una cabeza. Esta suele ser de tipo cermico, aunque inicialmente eran metlicas. La cabeza, en las unidades de cabezas mviles, est insertada en un extremo de un brazo mecnico, que se desplaza hacia el centro o hacia la parte externa del disco, bajo el control de los circuitos electrnicos del perifrico. El direccionamiento para leer o grabar un sector del disco se efecta dando al perifrico:

nmero de unidad nmero de superficie nmero de pista nmero del sector

El brazo sita rpidamente la cabeza encima de la pista correspondiente y espera a que el sector en cuestin se posicione bajo la cabeza. En el acceso, por tanto, hay que considerar dos tiempos:

Tiempo de bsqueda de la pista (tb) Tiempo de espera al sector (te)

Luego el tiempo de acceso ser ta = tb + te. En las unidades de cabezas fijas, hay una cabeza por pista y por tanto ta = te. La unidad de transferencia de datos desde y hacia el disco es el sector. Los disquetes suelen tener una o varias referencias fsicas (orificios y muescas) para poder identificar los sectores y pistas. Esto se denomina sectorizacin hardware o fsica. En los disquetes de 133 mm slo existe un orificio de alineamiento y referencia. Este orificio, cuando el disco gira, es detectado por un conjunto fotodiodo/fototransistor utilizndose como punto de referencia para el acceso a las distintas pistas y sectores. Las unidades de discos rgidos suelen tener unas muescas que identifican los lmites de cada sector y el primer sector de la pista. Antes de utilizar un disco es necesario efectuar en l unas grabaciones denominadas "dar

41

Ing. Nelly Cueva.


formato" al disco. Al formatear un disco se definen por software las pistas y sectores, adems se inicializa un directorio para la informacin sobre el contenido del disco (es como un ndice). El formateo efecta una sectorizacin que detecta y elimina para posteriores grabaciones, las zonas del disco deterioradas. El formateo incluye tablas con los nombres de los ficheros grabados en l, fecha y hora en que se crearon o actualizaron por ltima vez, espacio que ocupan y direcciones fsicas donde se encuentran. Clasificacin y tipos de discos Bsicamente existen cinco tipos de unidades de discos:

Discos de cabezas fijas Paquetes de discos Discos cartucho Discos Winchester (disco duro) Disquetes y extraibles

Dentro de los dispositivos de almacenamiento secundario hay que tener en cuenta en el momento de su eleccin las siguientes caractersticas:

Tiempo de acceso a los datos. Velocidad de transferencia de los datos. Capacidad total de almacenamiento. Tipo de acceso del dispositivo (secuencial o directo). Costo/bit del dispositivo. Densidad de almacenamiento.

Recientemente se han desarrollado soportes de almacenamiento de tecnologa ptica que tienen mayores densidades de grabacin que las magnticas convencionales.

CAPITULO IV 4.4. LENGUAJES DE PROGRAMACIN Y SISTEMAS OPERATIVOS Conceptos Bsicos Un computador consta de dos partes, una es la parte fsica, conocida como "hardware" y otra, la lgica denominada "software". Ambas son imprescindibles para tener una computadora en funcionamiento. As mismo la parte fsica es totalmente visible, la parte lgica es intangible, aunque imprescindible para que un computador sea operativo. El "software" se divide en dos grandes grupos, uno es el conocido como sistema operativo o sistema de explotacin y otra parte son los denominados lenguajes de programacin. Aparte existen infinidad de aplicaciones de "software" pero ya para casos concretos, como por ejemplo aplicaciones contables, aplicaciones ofimticas, paquetes estadsticos o programas cientficos. Lenguajes de programacin hay en gran cantidad, algunos han evolucionado a lo largo del tiempo y son usados en el transcurso de muchos aos, mientras que otros han sido operativos durante un perodo ms o menos largo y actualmente no se emplean. Dada esta gran variedad de lenguajes, aqu no se pretende dar una visin completa, sino una clasificacin en diversos tipos.

42

Ing. Nelly Cueva.

En general un lenguaje es un mtodo conveniente y sencillo de describir las estructuras de informacin y las secuencias de acciones necesarias para ejecutar una tarea concreta. Pero este proceso se puede realizar de muchas maneras distintas, por lo que habr que disponer de clasificaciones. Una muy importante es hacer dos grupos en base a su funcionamiento, esto es considerarlos como intrpretes y compiladores, segn se describe seguidamente: Un lenguaje se dice que es un intrprete, cuando para ejecutar un programa el lenguaje ha de leer y traducir al lenguaje especfico de la mquina las instrucciones una por una. Como es lgico el proceso se enlentece, por ejemplo si una operacin est dentro de la estructura conocida como ciclo y este se repite 100 veces, el lenguaje tiene que traducirlo 100 veces al cdigo de la mquina. No todo son desventajas, pues la parte buena de este tipo de lenguajes es que los errores se pueden corregir al momento y seguir fcilmente la ejecucin del programa, por lo cual son idneos para aprender a programar, proceso en el que da lo mismo la lentitud.

Por contra un lenguaje se dice que es compilado cuando el programa entero se traduce mediante el compilador de dicho lenguaje al lenguaje mquina correspondiente a un microprocesador dado (CPU) y el resultado se almacena de manera permanente en un archivo. De esta forma el programa se ejecutar de forma mucho ms rpida que con un intrprete, sobre todo si hay estructuras que se repiten, caso de los ciclos. La principal desventaja es cuando se produce un error, que muchas veces se detecta en el momento de la ejecucin, y la correccin no se puede hacer de inmediato sino que hay que realizar todo el proceso de compilado desde el principio. Un ejemplo tpico de lenguaje de este tipo el C ++, ampliamente usado en el desarrollo de programas.

43

Ing. Nelly Cueva.

Un ejemplo en la vida real que visualiza la diferencia entre un intrprete y un compilador es el siguiente, supongamos que tenemos un libro escrito en una lengua distinta al castellano, son posibles dos procesos de acceder a su contenido cuando se necesite su lectura, una es traducir en el momento de su empleo la parte del libro que se precise, pero sin pasarla a papel, sino simplemente mediante lectura traduciendo, esto sera el proceso de interpretado, mientras que la otra opcin sera traducir el libro entero al castellano y dejar dicha versin escrita sobre papel, esto sera equivalente al compilado. El proceso de compilado no es tan inmediato como parece, se describe seguidamente de forma muy esquematizada: 1. Se escribe el programa (conocido como programa fuente) mediante un editor de textos (en modo texto, sin formato) y se almacena en un fichero. 2. Este programa fuente es invocado por la primera etapa del compilador, que efecta un anlisis lxico, se puede considerar como una interpretacin del programa fuente preparndolo para un tratamiento posterior con detalle. En esta etapa se ejecutan los tres procesos indicados seguidamente:

Adaptar el cdigo fuente a un formato independiente de la forma en que se haya introducido en el sistema Eliminacin de informacin redundante como espacios y comentarios

Tratar las palabras clave y los smbolos para su paso a smbolos clave, conocido como "tokens" 3. Anlisis sintctico es el paso siguiente, el compilador determina la estructura, y de alguna forma el significado del programa fuente. El conjunto del programa se analiza en bloques, que se descomponen en instrucciones y se procede a identificar los elementos individuales. Como la sintaxis est expresada mediante un conjunto de reglas, cada una indica cmo se construye una estructura del programa a partir de otras estructuras de menor entidad. El proceso mediante el cual el compilador aplica estas reglas es conocido como "parsing".

44

Ing. Nelly Cueva.

4. El paso siguiente es la generacin de cdigo, conocido como objeto Para ello se recorre el cdigo intermedio generado y se busca cada uno de los "tokens" en el diccionario, lo que permite insertar las direcciones en el cdigo mquina que se est generando. 5. El proceso siguiente es la optimizacin de cdigo objeto generado, con lo que se obtiene un programa ms eficiente. Generalmente donde se consiguen los mejores resultados es en los bucles, cuyo objetivo es reducir al mximo el nmero de operaciones que se ejecutan en l. 6. Normalmente hay una etapa posterior conocida como "linkado " o "editor de ligaduras" en la que el o los mdulos objetos generados previamente se unen entre s y/o con otros mdulos disponibles en libreras, para formar un fichero que contiene un programa ejecutable directamente desde el sistema operativo, sin necesidad de disponer del compilador correspondiente. Incluso se pueden unir programas escritos en lenguajes distintos si los mdulos objeto creado se han estructurado de forma adecuada. En cualquier fase del proceso pueden detectarse errores que se podrn de manifiesto, implicando el volver hasta el programa fuente, efectuar las correcciones pertinentes y repetir todo el proceso, lo cual suele ser algo laborioso. 4.5. Metodologas de programacin Actualmente se estn produciendo cambios de gran alcance en la forma en que se desarrolla el "software" para los equipos informticos. Entre las causas de estos cambios se incluyen las siguientes:

El coste creciente de los desarrollos La insatisfaccin de los usuarios con la adecuacin y calidad La complejidad y tamao creciente de los programas La creciente dependencia de muchas organizaciones de sus sistemas informticos, sin posibilidad de abandonarlos El avance hacia ordenadores con caractersticas "software" muy diferentes de los actuales.

Estas y otras presiones estn provocando una reorganizacin de los mtodos empleados en el desarrollo de los programas para los computadores. Lo que se necesita son tcnicas para la elaboracin de productos "software" muy largos y complejos, que satisfagan estndares muy estrictos de calidad y prestaciones, de acuerdo con una planificacin, control y presupuestos adecuados. Los mtodos de trabajo que se han desarrollado para responder a estas necesidades constituyen lo que se ha dado en llamar "Ingeniera del Software". La Ingeniera del Software es una tarea de equipo, al comenzar un proyecto de desarrollo, se constituyen una serie de equipos con una estructura paralela a la del programa en s. Se establece un calendario para el proyecto y se asignan costes a cada una de las partes y etapas del proyecto. Cada equipo tiene un responsable, cuya tarea es la de comprobar que la programacin desarrollada por el equipo sea correcta, est estructurado con propiedad, dispone de las interfaces para conectar con los programas desarrolladas por otros equipos y se desarrolla de acuerdo a las previsiones de tiempo y coste. La Ingeniera del Software se ocupa del ciclo de vida completo de un producto software,

45

Ing. Nelly Cueva.


diseo, desarrollo, uso y mantenimiento. El trabajo se hace buscando el mayor grado posible de estandarizacin y los menores costes durante la totalidad del ciclo de vida de los programas. La Ingeniera del Software implica que un programa bien estructurado satisfaga las siguientes condiciones:

El programa ha de tener una estructura general en forma de mdulos, que a su vez estarn formados por procedimientos o segmentos. Debe existir un interfaz claramente definido entre los diversos mdulos Cada mdulo debe de ser una combinacin sencilla de construcciones elementales de un lenguaje de programacin Debe existir una fuerte correspondencia entre la estructura de los mdulos y la de los datos sobre los que operan Cada mdulo debe dejar las estructuras de datos sobre las que opera en un estado consistente con su definicin Un mdulo no debe tener efectos secundarios

Por lo que respecta a las tcnicas de diseo de programas, el mtodo ms simple y uno de los ms populares es el conocido como de "Refinamiento Progresivo". Se fundamenta en el uso de algoritmos que se escriben en un lenguaje intermedio entre el castellano y un lenguaje de programacin como el Pascal, este lenguaje se denomina seudocdigo. El proceso se puede describir en trminos de un lenguaje de esta naturaleza:

Establecer todos los pasos del programa en un algoritmo breve de alto nivel Repetir: Expandir cada sentencia del algoritmo en detalle, especificando los pasos necesarios Hasta que las tareas hayan sido especificadas con el detalle suficiente como para que pueda generarse el cdigo del programa.

Existen otras metodologas ms depuradas como por ejemplo la conocida como "Descomposicin Funcional". A diferencia de la anterior en cada etapa se especifican las propiedades esenciales de las estructuras de datos, y cada algoritmo se expresa como una funcin matemtica que transforma esta estructura de datos. Una vez desarrollado un programa como es lgico se ha de comprobar su buen funcionamiento. Actualmente en la mayora de los casos se prueban con cualquier tipo de datos que pueden presentarse en la realidad. Sin embargo este proceso nunca puede establecer si un programa es o no correcto, sin importar cuantos conjuntos de datos de usen. Si un programa es de importancia crtica, como ocurre actualmente con muchas aplicaciones comerciales, industriales o militares, es necesario tomar todas las precauciones posibles para asegurar que estn libres de errores. Se estn empezando a utilizar tcnicas para asegurar que los mdulos (y los algoritmos) son correctos, que los consideran como teoremas matemticos y entonces se emplean los mismos mtodos que se utilizan para demostrar los teoremas. Esta tarea, conocida como "mtodos formales" es muy compleja y no siempre aplicable. Tipos de lenguajes Aparte de la clasificacin vista previamente en compiladores e intrpretes, los lenguajes de programacin se clasifican en base a otros aspectos, de manera general en dos grandes grupos, Lenguajes de Alto Nivel y Lenguajes de Bajo Nivel. El grupo de los de Bajo Nivel, como su nombre indica incluye los relacionados ntimamente con la arquitectura de la mquina, por lo

46

Ing. Nelly Cueva.


que generalmente son especficos de una unidad central de procesamiento (CPU) y no son vlidos para otra diferente. Dentro de los de estos grupos est el lenguaje mquina, que es programar en el mbito de la CPU, por lo tanto usando ceros y unos, lenguaje muy dificil y propenso a errores. El otro ms conocido dentro de esta categora es el Ensamblador, que utiliza mnemnicos a escala sencilla, y por lo tanto evita las secuencias de ceros y unos. An as es bastante complicado y no es recomendable para usuarios sin amplios conocimientos. En conclusin, un lenguaje de bajo nivel est orientado hacia la resolucin de una determinada mquina o clases de mquinas. El desarrollo de los lenguajes de alto nivel comenz a mediados de los aos cincuenta del siglo pasado, en esta poca se crearon los lenguajes COBOL, FORTRAN Y ALGOL60. Posteriormente se han ido originndose otros muchos, de hecho varios miles, aunque sobreviven muy pocos. Entre los lenguajes de alto nivel cabe destacar los siguientes: JAVA .Net BASIC FORTRAN MODULA 2 Pascal ADA C C ++ LOGO LISP PROLOG Smalltalk

En conclusin un lenguaje de alto nivel est orientado hacia la resolucin de una determinada clase de problemas.

HISTORIA DE LOS SISTEMAS OPERATIVOS En este captulo se describe aquella parte del "software" de un ordenador que transforma el "hardware" en algo til: el sistema operativo. Para esta parte es importante considerar un computador como un conjunto de recursos, de tipo fsico, lgico o una mezcla de ambos. Tomados como un todo estos recursos proporcionan facilidades para el tratamiento y la entrada/salida de datos, as como para otros aspectos del funcionamiento de un ordenador. Para comprender qu es un sistema operativo, es necesario entender cmo han sido desarrollados, en este apartado se esboza el desarrollo de los sistemas operativos desde los primeros hasta los actuales multiprogramados y de tiempo compartido. A medida que nos adentremos en las distintas etapas, veremos que los componentes de los sistemas operativos evolucionaron como soluciones naturales a los problemas de los primeros sistemas informticos. Inicialmente lo nico que exista era el "hardware" del ordenador. Los primeros ordenadores eran mquinas muy grandes que ejecutaban su trabajo desde lo programado en una consola. El usuario escriba el programa y lo ejecutaba directamente desde la consola del operador, se deba de cargar manualmente en la memoria, bien fuera desde los conmutadores del panel frontal, desde cinta de papel o mediante tarjetas perforadas. Seguidamente se pulsaban los interruptores adecuados para cargar la direccin de inicio y para comenzar la ejecucin del programa. Se

47

Ing. Nelly Cueva.


supervisaba la ejecucin por medio de los indicadores luminosos de la consola, si apareca algn error se poda detener la ejecucin, examinar el contenido de la memoria y de los registros y depurar el programa desde la consola. La salida generada se imprima, o bien se almacenaba en cinta de papel o tarjetas perforadas para su procesado posterior. Con el tiempo se perfeccionaron tanto el "hardware" como el "software", aparecieron los lectores de tarjeta muy rpidos, impresoras de lnea de elevadas prestaciones en cuanto a velocidad y cintas magnticas. Se disearon programas ensambladores, cargadores y enlazadores para facilitar la tarea de programacin. Ms tarde aparecieron compiladores para los lenguajes FORTRAN y COBOL, haciendo ms sencillo el manejo del ordenador por parte del usuario, pero ms compleja su forma de operar. Por ejemplo para trabajar con un programa en FORTRAN, el programador haba de cargar primero en la mquina el compilador FORTRAN, que estaba normalmente en una cinta magntica que se tena que montar en un lector de cinta. El programa se lea a partir de tarjetas perforadas. A continuacin de la compilacin se generaba una salida en ensamblador que para ensamblarse requera la carga desde otra cinta del lenguaje ensamblador. A su vez el cdigo generado era frecuente que se tuviera que enlazar con otro existente en libreras. Finalmente el programa en binario, quedaba listo para su ejecucin y poda cargarse en memoria y si fuera necesario proceder a su depuracin. Como se puede deducir, la ejecucin de un programa poda implicar previamente un tiempo de preparacin considerable. Adems si se produca un error en cualquier paso lo ms probable era que habra que comenzar desde el principio. MULTIPROGRAMACIN El aspecto ms importante de la planificacin de trabajo es la capacidad de multiprogramacin. Las operaciones descritas previamente para procesos de E/S tienen sus limitaciones, un usuario, no puede en general mantener la CPU o los dispositivos de E/S ocupados todo el tiempo. La multiprogramacin es un mtodo para incrementar el empleo de CPU, disponiendo en todo momento de algo que la CPU pueda ejecutar. La idea ea la siguiente, el sistema operativo toma uno de los trabajos de un grupo de ellos y empieza a ejecutarlo, eventualmente el trabajo tendr que esperar por algn motivo, como por ejemplo para montar una cinta, en un sistema sin multiprogramacin la CPU quedara inactiva. Esta idea es bastante frecuente en otras situaciones, un abogado no tiene un solo cliente en un cierto momento, por el contrario, varios clientes pueden estar en situacin de recibir atencin al mismo tiempo. Mientras un caso espera para ir a juicio, el abogado puede trabajar en otro caso. Con un nmero suficiente de clientes un abogado nunca estar ocioso (Los abogados ociosos tienden a convertirse en polticos del PP, por lo que hay inters social en mantenerlos ocupados).

48

Ing. Nelly Cueva.

Los sistemas operativos multiprogramados son bastante sofisticados. Tener varios trabajos dispuestos para su ejecucin, supone mantenerlos simultneamente en memoria, y tener varios programas en memoria al mismo tiempo requiere una gestin de la memoria. Adems, si hay varios trabajos dispuestos para ejecucin, hay que tomar alguna decisin para elegir entre ellos, mediante una planificacin adecuada de la CPU. La multiprogramacin es el tema central de los sistemas operativos modernos. Los aspectos fundamentales a considerar son: Gestin de la memoria La memoria total del ordenador se ha de compartir de forma adecuada entre todos los programas y datos que en cierto momento tenga cada usuario del equipo. Planificacin de la CPU Entre todas las tareas demandadas por los usuarios es posible establecer preferencias, lo cual implica que la CPU se planifique dando ms tiempo a algunos trabajos o a los usuarios en funcin de unos niveles de privilegios establecidos. Control de concurrencia. El sistema operativo ha de gestionar adecuadamente todos los recursos del ordenador y ordenar la concurrencia de demandas de una forma adecuada. Por ejemplo si varios usuarios solicitan al mismo tiempo el acceso a un disco, se habr de gestionar de forma correcta esta concurrencia para evitar bloqueos o situaciones impredecibles. Proteccin En un sistema donde acceden muchos usuarios es lgico que exista un sistema de proteccin que permita asegurar que a los trabajos de uno no pueden acceder los otros usuarios, ya sea por motivos de seguridad (por ejemplo para evitar prdidas de informacin) o de confidencialidad. Abrazo mortal Es un problema que no se plantea solamente en un entorno de sistemas operativos, sino que puede aparecer en la vida real. Por ejemplo si dos personas han de cruzar un ro, saltando entre piedras puestas en l, y con la condicin de apoyar un solo pie, se llega al abrazo mortal cuando dos personas empiezan a cruzar desde orillas opuestas y se encuentran en el medio, llega este momento cuando los dos intentan pisar la misma piedra. En general esta situacin se produce cuando un sistema consta de un nmero finito de recursos para distribuir entre un nmero dado de procesos en competencia. TIEMPO COMPARTIDO Cuando se desarrollaron los sistemas por lotes estos se definan por la agrupacin de trabajos similares, que slo permitan el acceso secuencial a la informacin. Al disponerse de discos, se hizo posible el acceso inmediato a todas las aplicaciones. Un sistema por lotes tiene algunos inconvenientes, para el usuario, el principal es que los usuarios no pueden interactuar con sus trabajos mientras se estn ejecutando, lo cual crea problemas caso de necesitar depurar un programa. Como consecuencia posteriormente a estos sistemas aparecieron los conocidos como interactivos o hands-on, en los que el usuario da y recibe las instrucciones de forma inmediata. En consecuencia se puede experimentar fcilmente con cualquier programa.

49

Ing. Nelly Cueva.

Un sistema operativo de tiempo compartido utiliza la planificacin de la CPU y la multiprogramacin para dotar a cada usuario de una pequea parte del ordenador compartido. Permite que muchos usuarios compartan el ordenador. Como cada accin o comando suele ser breve, basta con un tiempo de CPU corto para cada usuario. Dado que el sistema cambia rpidamente entre usuarios, estos tienen la impresin de que cada uno de ellos dispone de su propio ordenador, cuando realmente un solo ordenador es compartido entre muchos usuarios. Esta idea fue expuesta en 1960, pero al ser difciles de construir estos sistemas, no se difundieron hasta principios de los aos 1970. TIEMPO REAL Otro tipo de sistemas son los conocidos como en tiempo real (RTOS -Real Time Operating System), que se utilizan frecuentemente como dispositivos de control en aplicaciones especializadas. Por ejemplo unos sensores proporcionan datos al ordenador, que los analiza y en consecuencia ajusta unos controles para modificar las entradas al sensor. Casos de este tipo se dan en aplicaciones cientficas, mdicas e industriales. Un ejemplo es el sistema operativo RMOS3 de Siemens, trabaja en modo de procesamiento multincleo simtrico (SMP) que permite en los ordenadores tipo PC con microprocesador de doble ncleo, el ejecutar tareas en paralelo, por lo que permite ahorrar un ordenador. Un caso tpico de equipo que funciona bajo tiempo real, es un "controlador miniatura", que consiste en un pequeo ordenador, diseado en una placa de circuito impreso, que se embebe en una mquina o cualquier otro dispositivo, con finalidad de control (sistemas empotrados). Estos dispositivos se usan en maquinaria de fabricacin, comprobacin de equipamientos, telecomunicaciones, sistemas de control y seguridad, ventilacin y aire acondicionado, monitorizacin del medio ambiente e investigacin cientfica. Algunos ejemplos reales se citan seguidamente: Hornos Control de seales de trfico Control de satlites Equipos musicales Verificacin de componentes de automocin Control de riego agrcola Comparado con un PC, un ordenador de este tipo es menor, gasta menos energa y disipa menos calor. La propiedad ms importante es que pueden trabajar en ambientes hostiles.

50

Ing. Nelly Cueva.


Clasificacin El sistema operativo es parte fundamental de cualquier ordenador. A grandes rasgos un sistema informtico se puede dividir en: Hardware Sistema operativo o de explotacin Programas de aplicacin Usuarios

El hardware facilita los recursos bsicos de computacin, mientras que los programas de aplicacin definen cmo hay que utilizar estos recursos para resolver los problemas de los usuarios. Puede haber muchos usuarios diferentes tratando de resolver problemas distintos. Consecuentemente es habitual la existencia de distintos programas de aplicacin. El sistema operativo controla y coordina el uso del hardware por parte de los distintos programas de aplicacin de los diversos usuarios.

Un sistema operativo es similar a un gobierno. Los recursos bsicos de un sistema informticos son el hardware, el software, los datos y por supuesto los usuarios. El sistema operativo facilita los medios para el uso adecuado de estos recursos durante la operacin del sistema informtico, al igual que un gobierno, el sistema operativo no realiza por s mismo una funcin til, simplemente crea el entorno en el que otros programas puedan hacer un trabajo. Tambin se puede considerar un sistema operativo como un asignador de recursos. Un sistema informtico tiene muchos recursos susceptibles de ser requeridos para resolver problemas. El sistema operativo acta como gestor asignando los recursos a programas y usuarios especficos, segn las necesidades, para que realicen sus tareas. Otra concepcin ligeramente diferente de un sistema operativo se basa en la necesidad de controlar distintos dispositivos de entrada/salida y los programas de usuario. Un sistema operativo es un programa de control.

51

Ing. Nelly Cueva.

En general no existe una definicin completamente adecuada de un sistema operativo. Existen porque son una va razonable para resolver el problema de crear un sistema informtico manejable. En general es ms fcil definir los sistemas operativos por lo que hacen, mas que por lo que son. Los sistemas operativos se pueden clasificar en cuatro grupos: Por lotes (batch) Son los primitivos, de la poca en que se manejaban tarjetas perforadas. Interactivos monousuarios Permiten que el usuario del equipo pueda interaccionar en cualquier momento con el proceso que est ejecutando. Slo permiten que trabaje un usuario en un momento dado. Tiempo compartido Permiten el acceso al ordenador a un nmero variable de usuarios de forma concurrente, y dada la gran velocidad del ordenador, es como si estuviera trabajando simultneamente para todos ellos. Tiempo real Se utilizan ampliamente en aplicaciones industriales y de control. El sistema responde de forma inmediata a entradas del exterior. Sistemas operativos habituales En el inicio de la informtica cada fabricante tena sus propios sistemas operativos que no eran compatibles con los de otros, incluso dentro de un mismo fabricante podan coexistir varios, caso tpico de IBM. Estos se conocen como sistemas propietarios. La tendencia actual es hacia los llamados sistemas abiertos, lo cual indica que estos sistemas operativos trabajan sobre una gran variedad de mquinas con independencia del fabricante del equipo. La gran ventaja es el ahorro a todos los niveles, pues por ejemplo una empresa con ordenadores de distintos fabricantes puede tener totalmente uniformado todo su software. A continuacin se comentan los sistemas operativos ms difundidos en los ltimos 30 aos. MS-DOS Fue un sistema operativo adaptado por Microsoft para IBM (PC-DOS), y en concreto para el modelo PC, aunque se populariz rpidamente siendo el ms usado a nivel personal. Fue desarrollado en el ao 1979 por Tim Paterson que trabajaba en Seatle Computer Products, y adquirido por Microsoft Corporation. En la bitcora Pmurillo se puede ver la historia de la eleccin de IBM para su nuevo ordenador personal. El espritu del MS-DOS fue el de proporcionar una base flexible para el software de un microordenador. Tiene un ncleo con un conjunto de comandos residentes y una capa con comandos transitorios que se cargan en memoria cuando se necesita su ejecucin para a continuacin abandonarla. Dado que el entorno es poco amigable se crearon aadidos que proporcionan un ambiente de trabajo ms fcil, el que ha tenido ms xito es WINDOWS (no estrictamente por razones de calidad), que ofrece un entorno grfico de ventanas y sencillez de manejo mediante un ratn, basado en desarrollos de la empresa XEROX. La principal desventaja de MS-DOS es que es monousuario y monotarea, es decir que slo 52

Ing. Nelly Cueva.


puede trabajar un usuario (no admite terminales) y que a su vez este slo puede ejecutar un programa al mismo tiempo, aunque este ltimo problema se resuelve con el entorno Windows. Actualmente ha quedado obsoleto, aunque se comercializa en algunos pases de Asia, pues a partir del Windows XP ya son en s sistemas operativos completos (aunque siguen siendo muy deficientes) y no necesitan para funcionar el MS-DOS. WINDOWS Windows 1.0 En 1985 Microsoft lanz la primera versin de la interfaz grfica de usuario Windows, para su sistema operativo MS-DOS. Esta interfaz grfica fue creada imitando a la del MacOS de Apple, que haba sido comercializada el ao anterior. La primera versin de Microsoft Windows no fue demasiado potente ni tampoco se hizo popular. Estaba muy limitada debido a los recursos legales de Apple, que no permita imitaciones de sus interfaces de usuario. Por ejemplo, las ventanas slo podan disponerse en mosaico sobre la pantalla; esto es, nunca podan solaparse u ocultarse unas a otras. Tampoco haba "papelera de reciclaje" debido a que Apple crea que ellos tenan la patente de este paradigma o concepto. Ambas limitaciones fueron eliminadas cuando el recurso de Apple fue rechazado en los tribunales de EE.UU. Por otro lado, los programas incluidos en la primera versin eran aplicaciones muy sencillas con poco atractivo para los usuarios profesionales. Windows 2.0 Se present en 1987, gran parte de su popularidad se debi a la inclusin en forma de versin run-time de nuevas aplicaciones grficas de Microsoft, como Excel y Word para Windows. stas podan cargarse desde MS-DOS, ejecutando Windows a la vez que el programa, y cerrando Windows al salir de ellas. Usaba el modelo de memoria 8088 y por ello estaba limitado a un megabyte de memoria; sin embargo, muchos usuarios lograron hacerlo funcionar bajo sistemas multitareas como por ejemplo DesqView Windows 3.0 Se lanz en 1990. Se benefici de las capacidades grficas mejoradas para los PC de la poca, y tambin del microprocesador Intel 80386, que permita mejoras en las capacidades multitarea de las aplicaciones Windows. Esto posibilitara ejecutar en modo multitarea viejas aplicaciones basadas en MS-DOS. Paralelamente, Microsoft e IBM trabajaban conjuntamente en el desarrollo de otro sistema operativo el OS/2, que ofreca una ventaja importante sobre Windows y es que aprovechaba mucho mejor la capacidad del procesador del momento, Intel 80286, dems tambin soportaba memoria virtual y multitarea. Como ambos equipos cooperaban entre s en el desarrollo de sus sistemas operativos para PC, cada uno tena acceso al cdigo del otro. Pero la versin ms competitiva fue Windows 3.0 convirtindose en 1990 en un duro rival para el Macintosh de Apple. En esta poca empeoraba el entendimiento entre IBM y Microsoft, divergan en como enfocar el futuro de las investigaciones. Mientras que IBM se decantaba por el OS/2, Microsoft insista en desarrollar todava ms Windows. La solucin fue que IBM desarrollara el OS/2 2.0 y Microsoft OS/2 3.0, superando as al OS/2 1.3 y Windows 3.0. Pero las diferencias entre los dos gigantes eran demasiado grandes y finalizaron sus acuerdos. IBM sac al mercado el OS/2 2.0 mientras que Microsoft rebautizaba su proyecto con el nombre de Windows NT. Windows 3.1 y Windows 3.11 Como respuesta a la comercializacin de OS/2 2.0, Microsoft desarroll Windows 3.1, que inclua diversas pequeas mejoras a Windows 3.0 (como las fuentes escalables TrueType), pero que consista principalmente en soporte multimedia. Ms tarde Microsoft public el Windows

53

Ing. Nelly Cueva.


3.11, conocido como Windows para trabajo en grupo, que inclua controladores y protocolos mejorados para las comunicaciones en red y soporte para redes punto a punto. Windows NT Microsoft continu desarrollando Windows NT. Contrataron a Dave Cutler, uno de los jefes analistas de VMS en Digital Equipment Corporation (DEC, actualmente Compaq que en 2005 fue comprada por HP) para convertir NT en un sistema ms competitivo. Cutler haba estado desarrollando un sucesor del VMS en DEC denominado Mica, y cuando DEC abandon el proyecto se llev sus conocimientos y algunos ingenieros a Microsoft. DEC tambin crey que se llevaba el cdigo de Mica a Microsoft y entabl una demanda. Microsoft finalmente pag 150 millones de dlares y acord dar soporte al microprocesador Alpha de DEC en NT. Siendo un sistema operativo completamente nuevo, Windows NT sufri problemas de compatibilidad con el hardware y el software existentes. Tambin necesitaba gran cantidad de recursos y stos estaban solamente disponibles en equipos grandes y caros. Debido a esto muchos usuarios no pudieron pasarse a Windows NT. La interfaz grfica de NT todava estaba basada en la de Windows 3.1 que era inferior a la Workplace Shell de OS/2. Se comercializaron varias versiones de NT, 3.1, 3.5, 3.51 y 4.0. Windows 95 Era en un sistema operativo muy diferente al Windows NT pero Microsoft trabaj para hacerlos lo ms compatibles posible. Una de sus mayores ventajas era que aunque necesitaba el MS-DOS como base tena una instalacin integrada. De esta manera el usuario solo tena que instalar el Windows 95 mientras que con las versiones anteriores haba que comprar los dos sistemas por separado e instalar Windows encima del MS-DOS. La otra gran ventaja era que incorporaba un subsistema en modo protegido que estaba especialmente escrito a procesadores 80386 o superiores. Con este subsistema Microsoft se aseguraba las compatibilidades y evitaba que las nuevas aplicaciones daaran a las otras. Windows 98 y Millenium En junio de 1998 sala al mercado Windows 98. Un sistema del que secomercializ otra versin en 1999, conocida como Windows 98 Second Edition. ste eliminaba muchos de los errores que ocasionaba el navegador Internet Explorer y adems permita a varios ordenadores conectarse a la vez a una misma conexin de Internet. La nueva baza de Microsoft tena que ser un sofisticado Windows 2000 pero el proyecto se retrasaba y para disimular el retraso sacaron con prisas una versin inacabada del mismo, Windows Millenium. Muy problemtica y que slo funcionaba de forma aceptable si vena preinstalada en el equipo. Windows en la actualidad La historia ya es ms fcil de recordar: se presentaron Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008 y por fin Windows 7. Cada nueva versin con mejoras en el diseo, la estabilidad, ms dispositivos de red, nuevos servicios, ms capacidades multimedia, etc. Sin embargo Windows Vista no ha obtenido el xito que se esperaba, sobre todo en grandes empresas. Ya est disponible Windows 7, que est reemplazando al tan criticado Windows Vista, pues ha tenido mucho xito en su comercializacin. UNIX UNIX fue diseado en los laboratorios Bell de la empresa AT&T, para su empleo en ordenadores marca Digital. Dadas sus caractersticas pronto se difundi ampliamente en ambientes universitarios, por lo que en el principio se consider como un sistema operativo orientado hacia ambientes de investigacin y no en aplicaciones de gestin. Actualmente est muy difundido en todo tipo de equipos aunque se ha perdido la estandarizacin habiendo muchas versiones diferentes poco compatibles entre s. Otra versin es el Solaris de la empresa 54

Ing. Nelly Cueva.


SUN (recientemente adquirida por Oracle). Una ventaja sobre otros sistemas operativos es que este sistema es multiusuario, por lo que un equipo admite gran cantidad de terminales trabajando simultneamente, adems de la robustez y seguridad. LINUX Linux es bsicamente un sistema operativo compatible con UNIX, que opera bajo equipos compatibles con el estndar del mercado y grandes sistemas informticos. Su ventaja principal es que su costo es prcticamente nulo, y es "software" libre, que significa que lo podemos distribuir y modificar libremente, segn la licencia GNU. EL ncleo fue escrito por Linus Torvalds (1969-), como un sistema operativo abierto y estndar, siendo desarrollado y ampliado posteriormente por muchos programadores, de forma independiente. El cdigo fuente, gestores de dispositivos y utilidades estn disponibles gratuitamente. Actualmente supone una gran competencia para Windows, ms que para UNIX, de hecho en el futuro puede desbancarlo, no slo por ser gratis y disponer de los fuentes, sino por superioridad y ms seguridad.

55

También podría gustarte