introduccion a-la-programacion

37
Introducción a la Programación “Conceptos Básicos”

Upload: jesus-peres-candia

Post on 06-Apr-2017

56 views

Category:

Internet


0 download

TRANSCRIPT

Page 1: Introduccion a-la-programacion

Introducción a la Programación“Conceptos Básicos”

Page 2: Introduccion a-la-programacion

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

Page 3: Introduccion a-la-programacion

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

Page 4: Introduccion a-la-programacion

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

Page 5: Introduccion a-la-programacion

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

Page 6: Introduccion a-la-programacion

Conceptos Básicos

¿Porqué estudiar informática?

Internet es una prueba palpable del impacto de las computadoras y la informática en nuestra sociedad

Page 7: Introduccion a-la-programacion

Conceptos Básicos

¿Porqué estudiar informática?Rápido avance de la tecnología permite hacer

cosas inimaginables hasta hace pocos añosSi 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

Page 8: Introduccion a-la-programacion

Conceptos Básicos

Algunos mitos sobre computadoresEl 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

Page 9: Introduccion a-la-programacion

Ser Inteligente(con criterio, sentido común, experiencia)

Máquina sin InteligenciaPero con un gran poder de procesamiento

Debe entregarle las órdenes precisas en un lenguaje específico

Page 10: Introduccion a-la-programacion

¿ Por qué usamos el computador?

Problemas del mundo real

Herramienta

solución

Page 11: Introduccion a-la-programacion

¿ Cual es el papel del computador ?

Dato Información

Entrada SalidaProceso computacional

Page 12: Introduccion a-la-programacion

“ 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”

Page 13: Introduccion a-la-programacion

¿Preguntas?

Page 14: Introduccion a-la-programacion

“Desarrollo Histórico”

Page 15: Introduccion a-la-programacion

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.

Page 16: Introduccion a-la-programacion

Siglo XVII 1642, Blaise Pascal

creo una máquina de sumar que acarreaba de una posición a la siguiente.

Fue conocida como PASCALINA

Page 17: Introduccion a-la-programacion

Siglo XIX (I)

1822, Charles Babbage diseñó una máquina diferencial para mejorar los cálculos de las tablas de navegación.

Page 18: Introduccion a-la-programacion

Siglo XIX (II)

1842, Ada Augusta King, Lady Lovelace (hija de Lord Byron) colabora con Babbage considerandose la primera programadora.

Page 19: Introduccion a-la-programacion

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.

Page 20: Introduccion a-la-programacion

1937

Alan Turing desarrolló la idea de máquina universal capaz de ejecutar cualquier algoritmo. Lo cual formó la base de la computabilidad.

Page 21: Introduccion a-la-programacion

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.

Page 22: Introduccion a-la-programacion

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)

Page 23: Introduccion a-la-programacion

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.

Page 24: Introduccion a-la-programacion

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

Page 25: Introduccion a-la-programacion

La CPU de von Neumann

ArithmeticLogic

Circuits

AC

Control Circuits

PC IRAR

DR

MainMemory

C0C1C2

C12

Flags

...Devices

ALU:

ArithmeticLogicUnit

ControlUnit

Registros del

Procesador

Bus decontrol

Bus dedirecciones

Bus dedatos

Page 26: Introduccion a-la-programacion

Ciclo de Instrucción de la CPU básica de von Neumann

PROCESA

BEGIN

CPUACTIVA?

{DR¬

M(AR)}

AR ¬ DR(ADR)

READ M

AC ¬ DR

AC=0AR ¬ DR(ADR) AR ¬ DR(ADR) AR ¬ DR(ADR)

DR ¬ AC

WRITE M

READ M READ M

AC ¬ AC + DR AC ¬ AC ^ DR PC ¬ DR(ADR) AC ¬ SHIFT AC

RSHIFTCOMPJmZJMPANDADDSTRLD

SI

FINNO

SI

AC

DECODIFICACION

FETCH DE

OPERANDO

AR ¬ PC

READ M

PC ¬ PC + 1IR ¬ DR(OPCODE)DECODE OPCODE

NO

FETCHINSTRUCCION

f0

f1, f2

f3

f4

f5, f6

f7

f4

f5

f6,f7

f5, f6

f7

f4 f4

f7

f5, f6

f7 f7 f7

Page 27: Introduccion a-la-programacion

Ejemplos01h lda #002h wrt03h add #204h jmp 02h

Imprimir los números pares

Evaluar la función:

(3*x + 5) / x si x > 0 f(x) 5*x2 si x <= 0

00h rda 8001h lda 8002h jmz 0803h jml 0804h mul #305h add #506h div 8007h jmp 0Ah08h mul #509h mul 800Ah wrt

Page 28: Introduccion a-la-programacion

1947

William Shockley, John Bardeen y Walter Brattain inventan la “resistencia de transferencia” que más tarde se conocerá como transistor.

Page 29: Introduccion a-la-programacion

1956

John McCarthy and Marvin Minsky fundan en una reunión en el Darmouth College el concepto de Inteligencia Artificial.

Page 30: Introduccion a-la-programacion

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

Page 31: Introduccion a-la-programacion

Historia de la Computación Primera Generación

Tubos de vacíoProgramadas en Lenguaje de máquinaGrandes y muy costosas

Segunda GeneraciónCircuitos de TransistoresProgramadas en lenguajes de alto nivel

Page 32: Introduccion a-la-programacion

Historia de la Computación Tercera Generación

Circuitos IntegradosControl a través de Sistemas Operativos

Cuarta GeneraciónMicroprocesadoresPrimeros MicrocomputadoresAparición de ARPANET

Page 33: Introduccion a-la-programacion

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.

Page 34: Introduccion a-la-programacion

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

Page 35: Introduccion a-la-programacion

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

Page 36: Introduccion a-la-programacion

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

Page 37: Introduccion a-la-programacion

¿Preguntas?