Beruflich Dokumente
Kultur Dokumente
Introducci
n
rogramacin
de
omputadore
s
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
UN - Virtual
2008
Programacin de Computado
Modulo 1. Introduccin
CONTENIDO
1. Arquitectura de un Computador
2. Problemas
3. Algoritmo
4. Solucin de problemas
Algortmicos
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
UN - Virtual
2008
Programacin de Computado
Modulo 1. Introduccin
Arquitectura de un
Est dividida en dos Computador
1.
partes importantes:
Hardware: Es la que
hace referencia a la
parte fsica de un
computador y de
cualquier dispositivo
electrnico.
CPU
La Arquitectura Von
Newman
Software: Es la que
hace referencia a la
parte lgica de un
computador.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
UN - Virtual
2008
Programacin de Computado
Modulo 1. Introduccin
Hardware
Unidad central de Proceso
Dispositivos de entrada, salida,
almacenamiento, comunicacin y cmputo
Memoria
CPU
1. Arquitectura de
Computador
Programacin de Computado
Modulo 1. Introduccin
Micropocesador
Athlon 64 X2 E6 3800+
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
1. Arquitectura del
Computador
Programacin de Computado
Modulo 1. Introduccin
Dispositivos
Entrada
Salida
Cmputo
Comunicacin
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
Almacenamiento
1. Arquitectura de un
Computador
Programacin de Computado
Modulo 1. Introduccin
Tipos de memoria
RAM (Random Access Memory): Memoria de
escritura y lectura. El contenido solo se mantiene
mientras el computador est encendido.
ROM (Read Only Memory): Memoria de solo
lectura, es permanente y no se afecta por el
encendido o apagado del computador.
Cach: Memoria de acceso muy rpido, usada
como puente entre la UCP y la memoria RAM, para
evitar las demoras en la consulta de la memoria
RAM.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
1. Arquitectura de un
Computador
Programacin de Computado
Modulo 1. Introduccin
Representacin en
Memoria
1. Arquitectura de un
Computador
Programacin de Computado
Modulo 1. Introduccin
Cdigo Binario
Cada 1 en un nmero binario representa
una potencia de 2 segn su posicin
Ejemplo: El nmero
representa el valor 38
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
binario
100110
1. Arquitectura de un
Computador
Programacin de Computado
Modulo 1. Introduccin
Medida de la Memoria
Unidad bsica de informacin: BIT que
corresponde a un nico dgito binario
(puede tomar los valores 1 o 0).
BYTE: conjunto de 8 bits. 256 valores
diferentes: desde el 00000000 (0 en
decimal) al 11111111 (255 en decimal).
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
1. Arquitectura de un
Computador
Programacin de Computado
Modulo 1. Introduccin
Cantidades de Memoria
Ejemplos:
1 Kilo Byte = 210 Bytes = 1024 Bytes
1 Mega Byte = 210 KBytes = 220 Bytes
= 1048576 Bytes
1 Giga Byte = 210 MBytes = 230 Bytes
1 Tera Byte = 210 GBytes = 240 Bytes
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
1. Arquitectura de un
Computador
Programacin de Computado
Modulo 1. Introduccin
Software
Software: conjunto de instrucciones que le
dicen al hardware que hacer.
Sistema Operativo
Herramientas de Desarrollo
Aplicaciones
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
1. Arquitectura de un
Computador
Programacin de Computado
Modulo 1. Introduccin
Arquitectura de Software
Lenguaje
Alto Nivel
Lenguaje
Lenguaje Hardware
EnsambladorMaquina
Sistema Operativo
Aplicacione
s
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
Herramientas
1. Arquitectura de un
Computador
Programacin de Computado
Modulo 1. Introduccin
Sistema Operativo
1. Arquitectura de un
Computador
Programacin de Computado
Modulo 1. Introduccin
Lenguaje de Mquina
nico lenguaje que entiende el hardware
(mquina).
Especfico para cada hardware (procesador,
dispositivos, etc.).
Programa: almacenado en memoria, contiene
instrucciones y datos.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
1. Arquitectura de un
Computador
Programacin de Computado
Modulo 1. Introduccin
Lenguaje Ensamblador
Software, generalmente escrito en lenguaje de
mquina, capaz de traducir de lenguaje
ensamblador a lenguaje de mquina.
Usa
mnemnicos
para
codificar
las
operaciones. Los datos y/o direcciones son
codificados generalmente como nmeros en
sistema hexadecimal.
Es especfico (aunque no nico) para cada
lenguaje de mquina.
Facultad Ingeniera
1. Arquitectura de un
Departamento de Ingeniera de Sistemas e Industrial
Computador
Programacin de Computado
Modulo 1. Introduccin
1. Arquitectura de un
Computador
Programacin de Computado
Modulo 1. Introduccin
Java
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
Python
1. Arquitectura de un
Computador
Programacin de Computado
Modulo 1. Introduccin
Aplicaciones
APLICACIN: software que le permite al
computador realizar una tarea especfica.
Procesadores de Texto
Video Juegos
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
Hojas de Calculo
1. Arquitectura de un
Computador
Programacin de Computado
Modulo 1. Introduccin
Herramientas de Desarrollo
Es una aplicacin que presenta un ambiente
en el que, empleando
un lenguaje de
programacin, se puede desarrollar nuevo
software.
Ejemplos:
ambientes
integrados
de
desarrollo como DevC++, Visual C++, en los
que se emplea el lenguaje C++.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
1. Arquitectura de un
Computador
Programacin de Computado
Modulo 1. Introduccin
2.
Problemas
UN-Virtual
Programacin de Computado
Modulo 1. Introduccin
Solucin de problema
Solucionar el problema es encontrar los
objetos desconocidos.
Para solucionar un problema se debe
determinar de manera clara y concisa:
cules son los objetos conocidos, las
condiciones y de que tipo son los objetos
desconocidos.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
2. Problemas
Programacin de Computado
Modulo 1. Introduccin
Tipos de problemas
Problemas bien condicionados
Problemas mal condicionados
Problemas indecidibles
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
2. Problemas
Programacin de Computado
Modulo 1. Introduccin
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
2. Problemas
Programacin de Computado
Modulo 1. Introduccin
Ejemplos de problemas
mal condicionados
De las siguientes imgenes,
cul es la ms llamativa?
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
2. Problemas
Mdulo 1
Introducci
n
Ejemplos de problemas
indecidible
Existe en la expansin decimal de Pi una
secuencia de tamao n para cualquier nmero
natural n?
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
2. Problemas
Programacin de Computado
Modulo 1. Introduccin
3.
Algoritmo
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
UN- Virtual
Programacin de Computado
Modulo 1. Introduccin
Caractersticas de un
Algoritmo
De finitud o
Precisin
Determinismo
Hay
un
orden
Todas las veces que
preciso en
se realicen las tareas
el
cual
o
pasos
de
un
deben
algoritmo, con las
ejecutarse
mismas condi-ciones
las
tareas
iniciales, se de-ben
que
obtener
resultados
conforman
idnticos.
Facultad Ingeniera
el
Departamento de Ingeniera de Sistemas e Industrial
algoritmo.
Finitud
El algoritmo
debe
terminar en
algn
momento
y
debe
usar
una
cantidad finita
2. Problemas
de recursos.
Programacin de Computado
Modulo 1. Introduccin
Estructura de un
Algoritmo
Datos
Instruccione
s
Estructuras de
control
Para
almacenar
informacin:
da-tos
de
entrada,
de
salida o intermedios.
Las acciones o
procesos que
el
algoritmo
realiza sobre
los datos.
Las
que
determinan
el
orden en que se
ejecutarn las instrucciones
del
algo-ritmo.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
2. Problemas
Programacin de Computado
Modulo 1. Introduccin
Ejemplo de algoritmo
Un estudiante se encuentra en su casa
(durmiendo) y debe ir a la universidad (a
tomar la clase de programacin!!),
Que debe hacer el estudiante?
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
2. Problemas
Programacin de Computado
Modulo 1. Introduccin
Ejemplo de algoritmo
1. Dormir hasta que suene el
despertador (o lo llame la mam).
2. Mirar la hora.
3. Hay tiempo suficiente?
3.1. Si, entonces
3.1.1. Baarse.
3.1.2. Vestirse.
3.1.3. Desayunar.
3.2. No, entonces
3.2.1. Vestirse.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
2. Problemas
Mdulo 1
Introducci
n
Ejemplo de algoritmo
4. Lavarse la boca.
5. Despedirse de la mam y el pap.
6. Hay tiempo suficiente?
6.1. Si, entonces
6.1.1. Caminar al paradero.
6.2. No, entonces
6.2.1. Correr al paradero.
7. Hasta que pase un bus para la
universidad hacer:
7.1. Esperar el bus
7.2. Ver a las dems personas que
esperan un bus.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
3. Algoritmos
Programacin de Computado
Modulo 1. Introduccin
Ejemplo de algoritmo
8. Tomar el bus.
9. Mientras que no llegue a la
universidad hacer:
9.1. Seguir en el bus.
9.2. Pelear mentalmente con el
conductor.
10. Timbrar.
11. Bajarse.
12. Entrar a la universidad.
13. Caminar hasta llegar al saln donde
se dicta su curso de programacin.
14. Ingresar al saln.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
3. Algoritmos
Programacin de Computado
Modulo 1. Introduccin
Representacin de
Algoritmos
Las representaciones ms
conocidas son:
Diagramas de flujo.
Pseudo-cdigo.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
3. Algoritmos
Programacin de Computado
Modulo 1. Introduccin
Diagramas de Flujo
Esquema de representacin grfico
de algoritmos.
Usa elementos grficos como
rectngulos y rombos.
Se pueden usar operaciones
matemticas.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
3. Algoritmos
Programacin de Computado
Modulo 1. Introduccin
Pseudo Cdigo
Esquema de representacin de algoritmos
que usa un subconjunto del lenguaje
natural del diseador de algoritmos.
Elimina
posibles
ambigedades
empleando una notacin que aunque libre
es ms restringida que la del lenguaje
natural.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
3. Algoritmos
Programacin de Computado
Modulo 1. Introduccin
Pseudo Cdigo
leer A, B, C
si A>B
si A>C
Mayor A
sino
Mayor C
fin_si
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
sino
si B>C
Mayor
sino
Mayor
fin_si
fin_si
escribir Mayor
3. Algoritmos
Mdulo 1
Introducci
n
Solucin de
Problemas
Algortmicos
4.
Problema
Metodologa
Programa
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
UN - Virtual
Programacin de Computado
Modulo 1. Introduccin
Metodologa de
Programacin
refinamiento.
Codificacin.
Prueba y verificacin.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
4. Solucin de Problemas
Algoritmicos
Programacin de Computado
Modulo 1. Introduccin
4. Solucin de Problemas
Algoritmicos
Programacin de Computado
Modulo 1. Introduccin
Especificacin del
Problema
4. Solucin de Problemas
Algoritmicos
Programacin de Computado
Modulo 1. Introduccin
Ejemplo de Especificacin
Algoritmicos
Programacin de Computado
Modulo 1. Introduccin
Ejemplo de
Problema:
Construir unEspecificacin
algoritmo que determine el mayor de
tres nmeros enteros.
Especificacin:
Entradas: A,B,C (nmeros de entrada) de tipo
entero.
Salidas: Mayor de tipo entero.
Condiciones: Mayor debe ser el valor mximo
de A,
B y C.
Facultad
Ingeniera
4. Solucin de Problemas
Departamento de Ingeniera de Sistemas e Industrial
Algoritmicos
Programacin de Computado
Modulo 1. Introduccin
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
4. Solucin de Problemas
Algoritmicos
Programacin de Computado
Modulo 1. Introduccin
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
4. Solucin de Problemas
Algoritmicos
Programacin de Computado
Modulo 1. Introduccin
Codificacin
Proceso en el cual se escribe el algoritmo
en un lenguaje de programacin,
utilizando el editor de la herramienta.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
4. Solucin de Problemas
Algoritmicos
Programacin de Computado
Modulo 1. Introduccin
Prueba y
Verificacin
Proceso en el cual se corrigen los errores
de sintaxis y de lgica del programa,
hasta lograr que el programa resuelva el
problema.
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
4. Solucin de Problemas
Algoritmicos
Programacin de Computado
Modulo 1. Introduccin
FIN
Gracias por la
atencin prestada
Facultad Ingeniera
Departamento de Ingeniera de Sistemas e Industrial
UN- Virtual