Download Conceptos básicos de computación y desarrollo historico
Document related concepts
no text concepts found
Transcript
Introducción a la Programación Profesores: Pedro Campos Manuel Crisosto Tatiana Gutiérrez Claudio Gutiérrez Conceptos Básicos • ¿Qué es computación? – La Ciencia de la Computación es el estudio de los fenómenos que rodean a los computadores (Boden, 1994) • ¿Qué es informática? – La Informática es el tratamiento automático de la información, utilizando computadores Conceptos Básicos • ¿Qué es un computador? – Es un dispositivo electrónico capaz de procesar información a partir de un grupo de instrucciones denominado programa. – Puede realizar tareas muy diversas usando distintos programas Conceptos Básicos • ¿Qué es un computador? – Es una herramienta capaz de almacenar y procesar datos que luego son convertidos en información a disposición de los seres humanos para tomar decisiones Conceptos Básicos • ¿Porqué estudiar informática? – Los computadores nos permiten salir más rápidamente de los supermercados, realizar operaciones bancarias las 24 horas del días, conocer el clima a través de los satélites y distraernos con entretenidos videojuegos Conceptos Básicos • ¿Porqué estudiar informática? – Internet es una prueba palpable del impacto de las computadoras y la informática en nuestra sociedad Conceptos Básicos • ¿Porqué estudiar informática? – Rápido avance de la tecnología permite hacer cosas inimaginables hasta hace pocos años – Si la industria automotriz hubiese tenido un progreso semejante, hoy un auto nuevo viajaría a miles de km/h y costaría menos que un litro de gasolina Conceptos Básicos • Algunos mitos sobre computadores – El computador lo hizo: El computador no puede tomar decisiones. Sólo hace lo que se le ordena. – Los computadores pueden hacer cualquier cosa: Los programadores son los que pueden hacer muchas cosas con los computadores, pero tienen limitaciones tecnológicas Debe entregarle las órdenes precisas en un lenguaje específico Ser Inteligente (con criterio, sentido común, experiencia) Máquina sin Inteligencia Pero con un gran poder de procesamiento Herramienta Problemas del mundo real solución ¿ Por qué usamos el computador? Información Dato Entrada Salida Proceso computacional ¿ Cual es el papel del computador ? “ El gran Desafío es cómo entender un problema, encontrarle una solución y cómo traspasar esa solución al computador para que la ejecute” “Desarrollo Histórico” Los primeros orígenes • La necesidad de calcular impulsó el desarrollo del ábaco como primera calculadora. • Muhammad ibn Musa Al’khowarizmi (S. XII) desarrolló el concepto de un proceso escrito a seguir para alcanzar un objetivo. Siglo XVII • 1642, Blaise Pascal creo una máquina de sumar que acarreaba de una posición a la siguiente. • Fue conocida como PASCALINA Siglo XIX (I) • 1822, Charles Babbage diseñó una máquina diferencial para mejorar los cálculos de las tablas de navegación. Siglo XIX (II) • 1842, Ada Augusta King, Lady Lovelace (hija de Lord Byron) colabora con Babbage considerandose la primera programadora. Siglo XIX (3) • Problemas en el recuento del censo de Población USA en 1890, provocó que Herman Hollerith desarrollase una máquina tabuladora, creando una empresa que en 1924 pasó a llamarse IBM. 1937 • Alan Turing desarrolló la idea de máquina universal capaz de ejecutar cualquier algoritmo. Lo cual formó la base de la computabilidad. 1940-1944 • Durante la segunda guerra mundial, la necesidad de descifrar los mensajes encriptados de los alemanes, se desarrolló con la ayuda de Turing, con una máquina denominada Colossus. 1943 • Comenzó este año en la Moore School of Electrical Engineering en Pennsylvania el trabajo en el ENIAC (Electronic an Numeric Integrator and Computer) 1944 • El primer calculador electromecánico automático de propósito general a gran escala fue el Mark I, ideado por Howard Aiken y desarrollado por IBM. 1945 • John von Neumann escribe su borrador sobre la arquitectura de los ordenadores el cual sirve de base al concepto actual de ordenador. Incorporar esquema final La CPU de von Neumann Flags ALU: Arithmetic Logic Circuits Bus de datos Arithmetic Logic Unit Registros del Procesador AC DR Main Memory PC Control Unit IR AR Devices Bus de direcciones Control Circuits ... C0 C1 C2 C12 Bus de control Ciclo de Instrucción de la CPU básica de von Neumann BEGIN CPU ACTIVA? NO FIN SI f0 AR PC PC PC + 1 IR DR(OPCODE) DECODE OPCODE DECODIFICACION f4 ADD DR(ADR) f5, f6 READ M DR AC READ M WRITE M AR AC + DR COMP RSHIFT SI DR(ADR) AC=0 f5, f6 FETCH DE OPERANDO NO READ M f7 AC JmZ JMP f4 f5, f6 f6, f7 f7 AC AR DR(ADR) f5 DR AND f4 f4 AR FETCH INSTRUCCION f3 STR LD AR DR(ADR) f1, f2 {DR M(AR)} READ M AC AC ^ DR f7 f7 f7 PC DR(ADR) AC AC f7 SHIFT AC PROCESA Ejemplos Imprimir los números pares Evaluar la función: (3*x + 5) / x si x > 0 f(x) 5*x2 si x <= 0 01h 02h 03h 04h lda #0 wrt add #2 jmp 02h 00h 01h 02h 03h 04h 05h 06h 07h 08h 09h 0Ah rda 80 lda 80 jmz 08 jml 08 mul #3 add #5 div 80 jmp 0Ah mul #5 mul 80 wrt 1947 • William Shockley, John Bardeen y Walter Brattain inventan la “resistencia de transferencia” que más tarde se conocerá como transistor. 1956 • John McCarthy and Marvin Minsky fundan en una reunión en el Darmouth College el concepto de Inteligencia Artificial. 1975-1982 • Edward Roberts, William Yates y Jim Bybee desarrollan lo que podría considerarse el primer ordenador personal, el Altair 8800. Tenía 256 bytes de memoria y no tenía pantalla, ni teclado ni dispositivo auxiliar de memoria. • Bill Gates y Paul Allen escribieron el primer programa para el Altair 8800, un compilador de Basic y fundan Microsoft. • Se desarrolla el CRAY I el primer superordenador. • Steve Jobs y Steve Wozniak desarrollan el Apple II • IBM crea el PC actual Historia de la Computación • Primera Generación – Tubos de vacío – Programadas en Lenguaje de máquina – Grandes y muy costosas • Segunda Generación – Circuitos de Transistores – Programadas en lenguajes de alto nivel Historia de la Computación • Tercera Generación – Circuitos Integrados – Control a través de Sistemas Operativos • Cuarta Generación – Microprocesadores – Primeros Microcomputadores – Aparición de ARPANET Historia de la Computación • Quinta Generación – Microelectrónica. – Competencia internacional por el dominio de la informática. – Internet se masifica. – Aparición de Computadores portátiles. – Manejo de Lenguaje Natural e Inteligencia Artificial. Ciencia y ficción: El ordenador invisible A largo plazo, el ordenador personal y la terminal de trabajo desaparecerán porque el acceso a la informática estará en todas partes: en las paredes, en nuestras muñecas y en “ordenadores para borrador” (como el papel para borrador) distribuidos para ser utilizados cuando sea necesario. Mark Weiser Xerox PARC Ciencia y ficción: Efecto multiplicador de la tecnología Si la industria automotriz hubiera experimentado un desarrollo parecido a la informática, se podría disponer de un Rolls-Royce por menos de 1.000 pesos. Además el vehículo dispondría de la potencia de un trasatlántico para ser capaz de recorrer un millón de kilómetros (25 veces la vuelta al mundo) con sólo un litro de gasolina. Tom Forester El futuro • • • • • • La red La IA La influencia en la educación La influencia en la medicina El comercio electrónico La informática portátil e inalámbrica “Componentes y Arquitectura de un computador” Hardware y software • En computación tenemos dos elementos básicos: – Hardware • En términos simples, corresponde a todas aquellas partes físicas o materiales, que podemos ver y tocar. Por ejemplo, el monitor, el teclado, mouse, disco duro, tarjeta de video, CPU, etc. – Software • Podríamos entender por software el “conjunto de instrucciones que los computadores emplean para manipular y procesar datos” • Sin el sw el computador sería un conjunto de dispositivos físicos sin utilidad. Hardware y software Software Hardware Componentes lógicos que se ejecutan en el hardware: Sistema Operativo Paquetes Básicos: Procesador de Texto Planilla Electrónica Presentación Programas de Aplicación Componentes Físicos Electro-Mecánicos •Dispositivos de Entrada •Dispositivos de Salida •Unidad Central de Proceso •Memoria Principal •Memoria Secundaria Hardware • Los computadores están formados por una serie de componentes, los cuales determinan en conjunto las capacidades del computador – – – – – CPU y tarjeta madre Memoria RAM y ROM Disco duro y disquetera Monitor y tarjeta de video Otros dispositivos Hardware • CPU (Central Process Unit) – Unidad de procesamiento central – Cerebro • Memoria ROM – Instintos • Memoria RAM Memoria RAM Disp. Entrada (mirar, escuchar) – Información que se maneja en el momento • Memoria secundaria – Discos magnéticos y ópticos,Disp. cintas Salida hablar) – Información que se busca en elementos adicionales Memoria Secundaria CPU Hardware • Dispositivos de entrada – Ingreso de información – Sentidos (ojos, oídos) • Dispositivos de salida – Entrega de información – Gestos, voz Memoria RAM Disp. Entrada (mirar, escuchar) Disp. Salida hablar) Memoria Secundaria CPU Hardware: Tarjeta madre • Tarjeta madre (mother board) – Es la placa de circuitos integrados en la cual se inserta el procesador, la memoria y otros componentes a través de los buses y las ranuras de expansión • Es la base para comenzar a “armar” un computador – Las ranuras de expansión permiten conectar, por ejemplo, tarjetas de sonido (que permiten al PC reproducir sonido), modem (para navegar por internet), tarjeta de video (para mostrar imágenes en la pantalla) Almacenamiento (Memoria) • Unidades de memoria – – – – – – 1 bit (puede tomar valores: 1 ó 0 - binarios) 1 byte : 8 bits 1 kilobyte (Kb) : 210 bytes 1 megabyte (Mb) : 210 kilobytes: 220 bytes 1 gigabyte (Gb) : 210 megabytes: 230 bytes 1 terabyte : 210 gigabytes: 240 bytes Almacenamiento (Memoria) • Tipos de memoria – Memoria RAM (random access memory) • Permite al computador almacenar información que la CPU está accesando frecuentemente y necesita para operar • Por ejemplo, información de un programa, instrucciones, datos, etc. – Memoria ROM (read only memory) • Contiene la información preinstalada, la cual es imposible modificar o borrar por completo • Es la información que indica los procesos básicos que debe ejecutar el computador (antes de ejecutar cualquier programa) Las partes de un computador • Caché – es una unidad pequeña de memoria ultrarrápida en la que se almacena información a la que se ha accedido recientemente o a la que se accede con frecuencia, lo que evita que el microprocesador tenga que recuperar esta información de circuitos de memoria más lentos. Almacenamiento (Memoria) • La memoria secundaria son todas las unidades de disco que un computador puede tener – Disco duro: 400 Mb, 20 Gb, 100 Gb – Unidad de disco flexible (disquete) • Disquete tamaño 5¼, capacidad 360 Kb, 1.2 Mb • Disquete tamaño 3½, capacidad 720 Kb, 1.44 Mb – CD-ROM (compact disc, read only memory) • Tamaño 700 Mb, usualmente se utilizan con información sólo para lectura – DVD (digital video disc o digital versatile disk) • 4.7 Gb a 17 Gb – Cintas • Originalmente gran tamaño y lentas. Hoy existe el DAT (digital audio tape), usado para tener respaldos de información de discos duros CPU (Unidad Central de Procesamiento) • Es un chip que viene en una tarjeta de circuitos (tarjeta madre) – Grandes computadores (mainframe) usan CPU más poderosas e incluso varias dentro del mismo computador – PC utilizan una sola CPU • Su capacidad se indica por el modelo (en PC: 8088, 80286, 80386, 80486, Pentium) – Intel – Pentium IV (3 GHz) – AMD – Athlon (2,1 GHz) • CPU tiene un reloj interno cuya velocidad se mide en hertz, lo que determina la velocidad de procesamiento CPU (Unidad Central de Procesamiento) • Unidad de Control (CU) – Se encarga de traer las instrucciones de memoria principal y determinar su tipo • Unidad de Aritmética y Lógica (ALU) – Se encarga de llevar a cabo evaluaciones aritméticas (adición, substracción, multiplicación, división) y lógicas (and, or, not, etc.) necesarias para realizar las distintas instrucciones • Registros – Constituyen una pequeña memoria de alta velocidad, utilizada para almacenamiento de resultados intermedios y de cierta información de control – Contador de programa: almacena información (la dirección) de la siguiente instrucción a ejecutar – Registro de instrucción: contiene la instrucción que se está ejecutando – Registro de propósito general: registros accesibles por programadores de bajo nivel CPU (Unidad Central de Procesamiento) • Diferentes computadores entienden diferentes conjuntos de instrucciones – Assembler • Dentro de la misma familia de computadores entienden las mismas instrucciones – Pentium III vs Pentium IV (nuevas instrucciones) • Aplicación hecha para un tipo de procesador no funcionará en otro tipo de computador – Macintosh vs PC Dispositivos de entrada • Teclado – Expandido 101 teclas, etc. • Mouse – 2 – 3 botones • • • • Scanner Modem Joystick Lector óptico Dispositivos de salida • Monitor – VGA, SVGA, UVGA, CGA • Impresora – Láser, inyección de tinta, matriz de puntos • Modem • Parlantes Arquitectura de un computador • Como hemos visto, la arquitectura general de un computador consta básicamente de 3 partes: – CPU – Memoria – Dispositivos de entrada/salida • Esta arquitectura fue propuesta por John Von Neumann en 1945, y hoy en día la mayoría de los computadores están basados en ella Arquitectura de Von Neumann La CPU de von Neumann Flags ALU: Arithmetic Logic Circuits Bus de datos Arithmetic Logic Unit Registros del Procesador AC DR Main Memory PC Control Unit IR AR Devices Bus de direcciones Control Circuits ... C0 C1 C2 C12 Bus de control ¿Preguntas?