Fundamentos de computadores PID_00160302 Material docente de la UOC CC-BY-SA • PID_00160302 Fundamentos de computadores Montse Peiron Guàrdia Lluís Ribas i Xirgo Fermín Sánchez Carracedo Doctora en Informática (1996). Licenciado en Informática (1989) Doctor en Informática desde 1996 Profesora del Departamento de y doctorado en Informática (1996) por la Universidad Politécnica Arquitectura de Computadores por la Universidad Autónoma de de Cataluña (UPC). Desde 1987, de la Universidad Politécnica Barcelona. Profesor titular del profesor titular de dicha universidad, de Cataluña (1990-2000). Departamento de Microelectrónica adscrito al Departamento de y Sistemas Electrónicos desde 1989 Arquitectura de Computadores, de la misma universidad. Consultor y desde 1997, profesor consultor de de la Universitat Oberta de la Universitat Oberta de Catalunya Catalunya desde 1997. (UOC). Sus áreas de investigación Actualmente, imparte docencia principales son el desarrollo de de asignaturas tanto de software nuevas arquitecturas multihilo para como de hardware en la Escuela procesadores VLIW, la sostenibilidad de Ingeniería (EE) de la UAB. en las tecnologías de la información También ha impartido o imparte y el desarrollo de nuevas estrategias docencia en cursos de doctorado educativas para adaptar los estudios y de máster, especialmente en universitarios actuales al Espacio relación con sistemas de agentes Europeo de Educación Superior. físicos con controladores hardware/ software empotrados y distribuidos. En la vertiente investigadora es jefe del grupo de investigación SHADES. A. Josep Velasco González Ramon Costa Castelló Miembro de la Unidad de Doctor en Informática por la Microelectrónica del Departamento Universidad Politécnica de Cataluña de Informática de la Universidad (UPC). Desde 1993 trabaja en el Autónoma de Barcelona desde Instituto de Organización y Control 1989. Doctorado en Informática de Sistemas Industriales (IOC) y en 1997 en la especialidad en el Departamento de Ingeniería de Microelectrónica. Desarrolla de Sistemas, Automática e la actividad docente y de Informática Industrial (ESAII) de la investigación en el campo del diseño UPC, donde realiza diferentes tareas e implementación de los circuitos de investigación y docencia en el digitales en la Escuela de Ingeniería ámbito de los sistemas informáticos de la UAB. de tiempo real y el control por computador. El encargo y la creación de este material docente han sido coordinados por los profesores: Montse Serra Vizern, David Bañeres Besora Primera edición: septiembre 2011 Montse Peiron Guàrdia, Lluís Ribas Xirgo, Fermín Sánchez Carracedo, A. Josep Velasco González Todos los derechos reservados © de esta edición, FUOC, 2011 Av. Tibidabo, 39-43, 08035 Barcelona Diseño: Manel Andreu Material realizado por: Eureca Media, SL Depósito legal: B-27.712-2011 ISBN: 978-84-693-9186-0 Los textos e imágenes publicados en esta obra están sujetos -excepto que se indique lo contrario- a una licencia de Reconocimiento-Compartir igual (BY-SA) v.3.0 España de Creative Commons. Se puede modificar la obra, reproducirla, distribuirla o comunicarla públicamente siempre que se cite el autor y la fuente (FUOC. Fundació per a la Universitat Oberta de Catalunya), y siempre que la obra derivada quede sujeta a la misma licencia que el material original. La licencia completa se puede consultar en: http://creativecommons.org/licenses/by-sa/3.0/es/legalcode.ca CC-BY-SA • PID_00160302 3 Fundamentos de computadores Contenidos Módulo didáctico 1 Introducción a los fundamentos de los computadores A. Josep Velasco González 1. El estudio de los fundamentos de los computadores 2. La evolución de los computadores 3. ¿Cómo son los computadores digitales actuales? Módulo didáctico 2 Representación de la información A. Josep Velasco González 1. Los números y los sistemas de representación 2. Representación de los números en un computador 3. Otros tipos de representaciones Módulo didáctico 3 Los circuitos lógicos combinacionales Montse Peiron Guàrdia, Fermín Sánchez Carracedo 1. Fundamentos de la electrónica digital 2. Implementación de circuitos lógicos combinacionales 3. Bloques combinacionales Módulo didáctico 4 Los circuitos lógicos secuenciales Montse Peiron Guàrdia, Fermín Sánchez Carracedo 1. Caracterización de los circuitos lógicos secuenciales 2. El biestable D 3. Bloques secuenciales 4. El modelo de Moore Módulo didáctico 5 Estructura básica de un computador Lluís Ribas i Xirgo 1. Màquinas de estados 2. Máquinas algorítmicas 3. Arquitectura básica de un computador CC-BY-SA • PID_00160302 4 Fundamentos de computadores Introducción a los fundamentos de los computadores A. Josep Velasco González PID_00163597 CC-BY-SA • PID_00163597 2 Introducción a los fundamentos de los computadores CC-BY-SA • PID_00163597 Introducción a los fundamentos de los computadores Índice Introducción .......................................................................................... 5 Objetivos ................................................................................................. 6 1. El estudio de los fundamentos de los computadores ............. 7 1.1. ¿Por qué estudiar los fundamentos de los computadores? .......... 7 1.2. ¿Qué tenemos que saber para entender los computadores? ........ 7 1.2.1. ¿Qué es la electrónica digital? ........................................... 8 1.2.2. La codificación de la información .................................... 9 1.2.3. Los sistemas digitales ........................................................ 10 2. La evolución de los computadores .............................................. 12 2.1. Primera generación (1940-1955) .................................................. 13 2.2. Segunda generación (1955-1965) ................................................. 14 2.3. Tercera generación (1965-1970) ................................................... 15 2.4. Cuarta generación (1970-) ............................................................ 15 3. ¿Cómo són los computadores digitales actuales? ................... 17 3.1. Arquitectura de Von Neuman ...................................................... 18 3.2. La arquitectura de Harvard ........................................................... 20 Resumen .................................................................................................. 21 Bibliografía ............................................................................................ 23 CC-BY-SA • PID_00163597 Introducción a los fundamentos de los computadores CC-BY-SA • PID_00163597 5 Introducción a los fundamentos de los computadores Introducción Actualmente, el uso de los ordenadores está plenamente generalizado en nuestra sociedad. Los encontramos por todas partes. Se han convertido en una herra- mienta de la que conocemos un buen número de funcionalidades y a la que damos un montón de aplicaciones muy variadas para facilitar nuestro trabajo o mejorar nuestra calidad de vida. El éxito de los computadores digitales deriva del hecho de que son máquinas de propósito general, que pueden ser programadas para casi cualquier tarea si se dispone de la interfaz adecuada. Puede ser, al mismo tiempo, una herra- mienta de trabajo y un dispositivo de ocio. La misma máquina puede llevar a cabo cálculos sofisticados para hacer simulaciones de procesos, convertirse en una herramienta de precisión para dibujar planos o gestionar con eficiencia una base de datos compleja. En este módulo presentamos la estructura básica de los computadores actuales, la evolución que han sufrido hasta llegar al estado actual y una introducción a los conceptos que se irán desarrollando a lo largo de los módulos siguientes, para entender en profundidad el funcionamiento de los computadores digitales. CC-BY-SA • PID_00163597 6 Introducción a los fundamentos de los computadores Objetivos El objetivo de este módulo es presentar la estructura básica de un computador digital, poniendo de manifiesto los conocimientos que se trabajarán para en- tender en profundidad su funcionamiento y su diseño. Con este módulo se persigue: 1. Saber diferenciar entre la electrónica digital y la electrónica analógica. 2. Entender que es posible codificar cualquier información con un conjunto reducido de símbolos, como 0 y 1. 3. Conocer a grandes rasgos, la evolución de los computadores y las mejoras tecnológicas que han marcado cambios cualitativos profundos. 4. Conocer la arquitectura básica de un computador digital actual. Entender la estructura básica de un computador digital es el objetivo final del curso. En este módulo se describe la arquitectura de un computador a grandes rasgos. A lo largo de los módulos siguientes se irán presentando conceptos, herramientas y metodologías para entender con profundidad el funcionamiento y la construcción de este tipo de máquinas.