Upload
hathuan
View
222
Download
0
Embed Size (px)
Citation preview
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
Solución de problemas con computadoraComputadoras 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 lasmaquinas, vuela a la otra, regresa, hasta que los treneschocan
Solución de problemas con computadoraComputadoras y Programas
computación
• porque ?
• para que ?
• que esperamos ?
Solución de problemas con computadoraComputadoras y Programas
computaciónestudio de procesos sistematicos que describen y transformaninformación
• teoría
• analisis
• diseño
• eficiencia
• implementación
• aplicación
Solución de problemas con computadoraComputadoras y Programas
abacouno de los primeros dispositivos mecanicos
• aprox 1200 A.C.
• en china
• se usa para contar
Solución de problemas con computadoraComputadoras y Programas
diferentes tipos de abacos
Solución de problemas con computadoraComputadoras y Programas
Wilhelm Schickard (1592 - 1635)
• pensador aleman
• enseño astronomia ymatematicas
• primera calculadoramecanica
Solución de problemas con computadoraComputadoras y Programas
Wilhelm Schickard (1592 - 1635)
• + y - automatico
• * y / semi-automatico
Solución de problemas con computadoraComputadoras y Programas
Blaise Pascal (1623 - 1662)
• cientifico frances
• matemático y fisico
Solución de problemas con computadoraComputadoras y Programas
Pascalina
• solo + y -
• engranes
• similar a un odometro
• mala tecnologia de sutiempo
Solución de problemas con computadoraComputadoras y Programas
Charles Babbage (1791 - 1871)
• matemático ingles
• primer flojo
• computadoras de vapor
• maquina diferencial -producción detablas
• maquina analitica
• “observations on the application ofmachinery on the computation ofmathematical tables”
Solución de problemas con computadoraComputadoras y Programas
maquina analítica
• unidad de procesamiento -elmolino-
• almacenamiento deprogramas numéricos
• tarjetas perforadas comoentrada
• salida - impresión -
• trabajaba mediante engranesy palancas
Solución de problemas con computadoraComputadoras y Programas
Charles Jacquard
• frances
• tejidos
Solución de problemas con computadoraComputadoras y Programas
maquina tejedora
• maquina tejedora
• teje los patrones codificadosen una tarjeta perforada
Solución de problemas con computadoraComputadoras y Programas
Howard Aiken
• harvard university
• 1939-1944
• IBM automatic sequence controlledcalculator (ASCC),
• tablas matemáticas
Solución de problemas con computadoraComputadoras 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
Solución de problemas con computadoraComputadoras y Programas
ENIAC
• universidad de pensylvania -1947-
• Electronic Numerical Integrator And Calculator
• John Mauchly y John Eckert
Solución de problemas con computadoraComputadoras y Programas
ENIAC
• ocupaba todo un sótano
• tenía más de 18 000 tubos devacío,
• consumía 200 KW de energíaeléctrica
• requería todo un sistema deaire acondicionado
• realiza cinco mil operacionesaritméticas en un segundo
Solución de problemas con computadoraComputadoras 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 dondecirculaban señales eléctricas sujetas a retardos
Solución de problemas con computadoraComputadoras 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
tomada de descripciones del sistema nervioso unprograma y datos que usa se almacenan en memoria que
ordenaba y unia números en una lista una operacióndespues de la otra a diferencia de ENIAC que usaba
aritmetica decimal
Solución de problemas con computadoraComputadoras y Programas
primera generación - 51-58 -
• tubos de vacío
• lenguaje máquina
• grandes y costosas
• mainframes
Solución de problemas con computadoraComputadoras y Programas
primera generación - 51-58 -
• 51 - UNIVAC (UNIversALComputer)
• primera compu comercial
• 1000 palabras de memoriacentral
• lectura de cintas magnéticas
• censo de 1950
Solución de problemas con computadoraComputadoras 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 deprocesamiento
Solución de problemas con computadoraComputadoras y Programas
tercera generación - 65-70 -
• sistema operativo
• circuitos integrados
• discos de I/O
• minicomputadoras
• IBM produce la serie 360
Solución de problemas con computadoraComputadoras 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
Solución de problemas con computadoraComputadoras y Programas
1976
• Steve Wozniak y Steve Jobs
• primera microcomputadora de uso masivo
• el comienzo de Apple
Solución de problemas con computadoraComputadoras y Programas
ventas
• 1981 - 800,000 computadoras personales
• 1982 - 1,400,000
• entre 1984 y 1987 60 millones
Solución de problemas con computadoraComputadoras y Programas
aplicaciones
• procesadores de palabras
• hojas electrónicas de cálculo
• paquetes gráficos
Solución de problemas con computadoraComputadoras y Programas
quinta generación - 80 + -
• RISC - reduced instruction set computers
• paralelismo masivo
• almacenamiento optico
• supercomputadoras
un poco de computadoras
Solución de problemas con computadoraEstructura
principales funciones
• leer entrada
• escribir salida
• llevar a cabo operaciones
• controlar la secuencia
diskette, raton, teclado monitor, diskette, impresoraaritmeticas, comparasiones
Solución de problemas con computadoraEstructura
Solución de problemas con computadoraEstructura
maquina Von Neumannarq que utiliza el mismo dispositivo para almacenar datos einstrucciones
• unidad aritmético-lógica o ALU
• unidad de control
• memoria
• dispositivo de entrada/salida
• bus de datos
Solución de problemas con computadoraEstructura
maquina no Von Newmannarq que utiliza dispositivos fisicamente separados paraalmacenar 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
Solución de problemas con computadoraEntrada-salida
entrada
• teclado
• ratón
• scanner
• micrófono
• lector de código debarras
• cámara digital
• cámara de video
• cámara web
• joystick
• lápiz óptico
• tarjetas perforadas
• CD-ROM
• DVD-ROM
Solución de problemas con computadoraEntrada-salida
salida
• monitor
• impresora
• láser
• bocinas
• fax
Solución de problemas con computadoraEntrada-salida
duales
• pantalla táctil (touch screen)
• disco duro
• disco flexible
• dispositivos de almacenamiento
sistemas operativos
1984
• Richard Stallman deja su trabajo enMIT y comienza a trabajar en elproyecto GNU
1985
• Free Software Foundation, fundada por Richard Stallman.
• The GNU manifesto, una carta de Richard Stallman dondehabla del movimiento de software libre es publicado en elnumero de marzo 1985 de Dr. Dobb’s Journal
1991
• Linus concibe la idea de Linux yanuncia el proyecto en un correo enUsenet
• Version 0.01 se pone disponible eninternet
1992
• primer Linux Newsgroup: alt.os.linux fundado en UseNet
• Ari Lemmke comienza el popular Linux newsgroupcomp.os.linux en UseNet
• Adam Richter anuncia la primera version de la primeradistribucion de Linux desde su propia compañia: Yggdrasil
1993
• Slackware, la famosa distribución de Linux es sacada porPeter Volkerding
• Matt Welsh saca Linux Installation y getting started:version 1
1994
• Linux kernel version 1.0
sistemas de numeración
sistema numericoconjunto de reglas y simbolos que se utilizan para representardatos numéricos
sistema numericodebe permitir formar todos los numeros validos en el sistema
posicionalesel valor de los símbolos que componen el sistema depende delvalor que se les ha asignado y de la posición que ocupan en elnúmero
no posicionalesel valor de los símbolos que componen el sistema es fijo y nodepende de la posición del símbolo dentro del número
valorel valor de un símbolo depende tanto del símbolo utilizadocomo de la posición que este ocupa en el número
basenúmero de símbolos permitidos en un sistema numericoposicional
sistema númerico decimal
• 8
• 9
• 10
• 99
• 100
• 129
teorema fundamental de la numeración
N = dn...d1d0, d−1d
−2d−3...d−k =
dn · bn+ ... + d1 · b1
+ d0 · b0,+d−1 · b−1... + d
−k · b−k
N =∑n
i=−k di · bi
b: base, numero de simbolosd: simbolo cualquiera
n: no de símbolos de la parteenterak: no de símbolos de la partedecimal
sistema decimal de numeración
N = dn...d1d0, d−1d
−2d−3...d−k =
dn · 10n+ ... + d1 · 101
+ d0 · 100,+d−1 · 10−1... + d
−k · 10−k
N =∑n
i=−k di · 10i
sistema decimal de numeración
1492, 36 =
1 · 103+ 4 · 102
+ 9 · 101+ 2 · 100,+3 · 10−1
+ 6 · 10−2
sistema binario de numeración
N = dn...d1d0, d−1d
−2d−3...d−k =
dn · 2n+ ... + d1 · 21
+ d0 · 20,+d−1 · 2−1... + d
−k · 2−k
N =∑n
i=−k di · 2i
sistema binario de numeración
1001, 01 =
1 · 23+ ... + 0 · 22
+ 0 · 21+ 1 · 20,+0 · 2−1
+ 1 · 2−2
sistema númerico decimal
• 25= 32
• 24= 16
• 23= 8
• 22= 4
• 21= 2
• 20= 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 · 23+ 0 · 22
+ 0 · 21+ 1 · 20,+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
3410 = 1000102
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,82812510 = 0,1101012
equivalenciasdecimal binario hexadecimal octal
00 0000 00 0001 0001 01 0102 0010 02 0203 0011 03 0304 0100 04 0405 0101 05 0506 0110 06 0607 0111 07 0708 1000 08 1009 1001 09 1110 1010 0A 1211 1011 0B 1312 1100 0C 1413 1101 0D 1514 1110 0E 1615 1111 0F 17