Introducción a la Computación Bruno Lara Guzmán Departamento de Computación, Facultad de Ciencias 19 de agosto de 2009
un poco de Historia
Computadoras y Programas problemitas dos trenes se encuentran a 300 km en la misma via, viajando en la misma dirección uno va a 90 km/hr el otro a 60 km/hr una mosca vuela a 150 km/hr cuanto vuela la mosca que esta parada en una de las maquinas, vuela a la otra, regresa, hasta que los trenes chocan
Computadoras y Programas computación porque? para que? que esperamos?
Computadoras y Programas computación estudio de procesos sistematicos que describen y transforman información teoría analisis diseño eficiencia implementación aplicación
Computadoras y Programas abaco uno de los primeros dispositivos mecanicos aprox 1200 A.C. en china se usa para contar
Computadoras y Programas diferentes tipos de abacos
Computadoras y Programas Wilhelm Schickard (1592-1635) pensador aleman enseño astronomia y matematicas primera calculadora mecanica
Computadoras y Programas Wilhelm Schickard (1592-1635) + y - automatico * y / semi-automatico
Computadoras y Programas Blaise Pascal (1623-1662) cientifico frances matemático y fisico
Computadoras y Programas Pascalina solo + y - engranes similar a un odometro mala tecnologia de su tiempo
Computadoras y Programas Charles Babbage (1791-1871) matemático ingles primer flojo computadoras de vapor maquina diferencial -producción de tablas maquina analitica observations on the application of machinery on the computation of mathematical tables
Computadoras y Programas maquina analítica unidad de procesamiento -el molino- almacenamiento de programas numéricos tarjetas perforadas como entrada salida - impresión - trabajaba mediante engranes y palancas
Computadoras y Programas Charles Jacquard frances tejidos
Computadoras y Programas maquina tejedora maquina tejedora teje los patrones codificados en una tarjeta perforada
Computadoras y Programas Howard Aiken harvard university 1939-1944 IBM automatic sequence controlled calculator (ASCC), tablas matemáticas
Computadoras y Programas MARK 1 switches, relevadores, ejes rotativos, y clutches contaba con mas de 750,000 componenentes 15 mts de largo, 2.40 de alto y pesaba 5 tons x dos numeros en 6 seg. y / en 12 seg
Computadoras y Programas ENIAC universidad de pensylvania -1947- Electronic Numerical Integrator And Calculator John Mauchly y John Eckert
Computadoras y Programas ENIAC ocupaba todo un sótano tenía más de 18 000 tubos de vacío, consumía 200 KW de energía eléctrica requería todo un sistema de aire acondicionado realiza cinco mil operaciones aritméticas en un segundo
Computadoras y Programas Von Neuman (1903-1957) matemático de Princeton EDVAC -Electronic Discrete Variable Automatic Computer- cuatro mil bulbos memoria basado en tubos llenos de mercurio por donde circulaban señales eléctricas sujetas a retardos
tomada de descripciones del sistema nervioso un programa y datos que usa se almacenan en memoria que ordenaba y unia números en una lista una operación despues de la otra a diferencia de ENIAC que usaba aritmetica decimal Solución de problemas con computadora Computadoras y Programas Von Neuman (1903-1957) contribuciones notación para describir los aspectos lógicos set de instrucciones para EDVAC concepto de programa almacenado primer programa almacenado la nocion de operación serial aritmetica binaria para guardar y manipular instrucciones
Computadoras y Programas primera generación - 51-58 - tubos de vacío lenguaje máquina grandes y costosas mainframes
Computadoras y Programas primera generación - 51-58 - 51 - UNIVAC (UNIversAL Computer) primera compu comercial 1000 palabras de memoria central lectura de cintas magnéticas censo de 1950
Computadoras y Programas segunda generación - 59-64 - circuitos de transistores cintas magneticas de I/O memoria magnetica lenguajes de alto nivel reduccíon del tamaño y aumento de la capacidad de procesamiento
Computadoras y Programas tercera generación - 65-70 - sistema operativo circuitos integrados discos de I/O minicomputadoras IBM produce la serie 360
Computadoras y Programas cuarta generación - 70-80 - microprocesadores y microcomputadoras, mercado industrial revolución informática circuteria de integración a gran escala (LSI, VLSI) almacenamiento virtual
Computadoras y Programas 1976 Steve Wozniak y Steve Jobs primera microcomputadora de uso masivo el comienzo de Apple
Computadoras y Programas ventas 1981-800,000 computadoras personales 1982-1,400,000 entre 1984 y 1987 60 millones
Computadoras y Programas aplicaciones procesadores de palabras hojas electrónicas de cálculo paquetes gráficos
Computadoras y Programas quinta generación - 80 + - RISC - reduced instruction set computers paralelismo masivo almacenamiento optico supercomputadoras
un poco de computadoras
Estructura principales funciones leer entrada escribir salida llevar a cabo operaciones controlar la secuencia diskette, raton, teclado monitor, diskette, impresora aritmeticas, comparasiones
Estructura
Estructura maquina Von Neumann arq que utiliza el mismo dispositivo para almacenar datos e instrucciones unidad aritmético-lógica o ALU unidad de control memoria dispositivo de entrada/salida bus de datos
Estructura maquina no Von Newmann arq que utiliza dispositivos fisicamente separados para almacenar datos e instrucciones arquitectura Harvard MARK 1 instrucciones en cintas perforadas y datos en interruptores ambas memorias tiene buses de acceso posibilidad de lectura simultanea
Entrada-salida entrada teclado ratón scanner micrófono lector de código de barras cámara digital cámara de video cámara web joystick lápiz óptico tarjetas perforadas CD-ROM DVD-ROM
Entrada-salida salida monitor impresora láser bocinas fax
Entrada-salida duales pantalla táctil (touch screen) disco duro disco flexible dispositivos de almacenamiento
sistemas operativos
1984 Richard Stallman deja su trabajo en MIT y comienza a trabajar en el proyecto GNU
1985 Free Software Foundation, fundada por Richard Stallman. The GNU manifesto, una carta de Richard Stallman donde habla del movimiento de software libre es publicado en el numero de marzo 1985 de Dr. Dobb s Journal
1991 Linus concibe la idea de Linux y anuncia el proyecto en un correo en Usenet Version 0.01 se pone disponible en internet
1992 primer Linux Newsgroup: alt.os.linux fundado en UseNet Ari Lemmke comienza el popular Linux newsgroup comp.os.linux en UseNet Adam Richter anuncia la primera version de la primera distribucion de Linux desde su propia compañia: Yggdrasil
1993 Slackware, la famosa distribución de Linux es sacada por Peter Volkerding Matt Welsh saca Linux Installation y getting started: version 1
1994 Linux kernel version 1.0
sistemas de numeración
sistema numerico conjunto de reglas y simbolos que se utilizan para representar datos numéricos sistema numerico debe permitir formar todos los numeros validos en el sistema
posicionales el valor de los símbolos que componen el sistema depende del valor que se les ha asignado y de la posición que ocupan en el número no posicionales el valor de los símbolos que componen el sistema es fijo y no depende de la posición del símbolo dentro del número
valor el valor de un símbolo depende tanto del símbolo utilizado como de la posición que este ocupa en el número base número de símbolos permitidos en un sistema numerico posicional
sistema númerico decimal 8 9 10 99 100 129
teorema fundamental de la numeración N = d n...d 1 d 0, d 1 d 2 d 3...d k = d n b n +... + d 1 b 1 + d 0 b 0,+d 1 b 1... + d k b k N = n i= k d i b i b: base, numero de simbolos d: simbolo cualquiera n: no de símbolos de la parte entera k: no de símbolos de la parte decimal
sistema decimal de numeración N = d n...d 1 d 0, d 1 d 2 d 3...d k = d n 10 n +... + d 1 10 1 + d 0 10 0,+d 1 10 1... + d k 10 k N = n i= k d i 10 i
sistema decimal de numeración 1492, 36 = 1 10 3 + 4 10 2 + 9 10 1 + 2 10 0,+3 10 1 + 6 10 2
sistema binario de numeración N = d n...d 1 d 0, d 1 d 2 d 3...d k = d n 2 n +... + d 1 2 1 + d 0 2 0,+d 1 2 1... + d k 2 k N = n i= k d i 2 i
sistema binario de numeración 1001, 01 = 1 2 3 +... + 0 2 2 + 0 2 1 + 1 2 0,+0 2 1 + 1 2 2
sistema númerico decimal 2 5 = 32 2 4 = 16 2 3 = 8 2 2 = 4 2 1 = 2 2 0 = 1 2 1 = 0,5 2 2 = 0,25 2 3 = 0,125 2 4 = 0,0625 2 5 = 0,03125
sistema binario de numeración 1001, 01 = 1 2 3 + 0 2 2 + 0 2 1 + 1 2 0,+0 2 1 + 1 2 2 1 8 + 0 4 + 0 2 + 1 1,+0 0,5 + 1 0,25 8 + 0 + 0 + 1 + 0,5 + 0,25 = 9,75
decimal a binario 34/2 = 17 resta 0 17/2 = 8 resta 1 8/2 = 4 resta 0 4/2 = 2 resta 0 2/2 = 1 resta 0 1/2 = 0 resta 1 34 10 = 100010 2
decimal a binario 0,828125x2 = 1,656250 0,656250x2 = 1,31250 0,31250x2 = 0,6250 0,6250x2 = 1,250 0,250x2 = 0,50 0,50x2 = 1,0 0,828125 10 = 0,110101 2
equivalencias decimal binario hexadecimal octal 00 0000 00 00 01 0001 01 01 02 0010 02 02 03 0011 03 03 04 0100 04 04 05 0101 05 05 06 0110 06 06 07 0111 07 07 08 1000 08 10 09 1001 09 11 10 1010 0A 12 11 1011 0B 13 12 1100 0C 14 13 1101 0D 15 14 1110 0E 16 15 1111 0F 17