Sei sulla pagina 1di 48

Mdulo 1

Introduccin

rogramacin de
omputadores

Facultad Ingeniera UN - Virtual


Departamento de Ingeniera de Sistemas e Industrial 2008
Programacin de Computadores
Modulo 1. Introduccin

CONTENIDO
1. Arquitectura de un Computador

2. Problemas

3. Algoritmo

4. Solucin de problemas Algortmicos

Facultad Ingeniera UN - Virtual


Departamento de Ingeniera de Sistemas e Industrial 2008
Programacin de Computadores
Modulo 1. Introduccin

1. Arquitectura de un Computador
E s t d i vi d i d a e n d o s
partes importantes:
CPU
Hardware: Es la que
hace referencia a la
parte fsica de un
computador y de
cualquier dispositivo
electrnico. La Arquitectura Von
Newman
Software: Es la que
hace referencia a la
parte lgica de un
c o m p u t a d o r.

Facultad Ingeniera UN - Virtual


Departamento de Ingeniera de Sistemas e Industrial 2008
Programacin de Computadores
Modulo 1. Introduccin

Hardware
Unidad central de Proceso
Dispositivos de entrada, salida, almacenamiento,
comunicacin y cmputo
Memoria

CPU

La Arquitectura Von Newman

Facultad Ingeniera 1. Arquitectura de Computador


Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
Modulo 1. Introduccin

Unidad Central de Proceso


(CPU)

Micropocesador
Athlon 64 X2 E6 3800+

Facultad Ingeniera 1. Arquitectura del Computador


Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
Modulo 1. Introduccin

Dispositivos
Entrada Salida

Cmputo

Almacenamiento
Comunicacin

Facultad Ingeniera 1. Arquitectura de un


Departamento de Ingeniera de Sistemas e Industrial Computador
Programacin de Computadores
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 1. Arquitectura de un


Departamento de Ingeniera de Sistemas e Industrial Computador
Programacin de Computadores
Modulo 1. Introduccin

Representacin en
Memoria
Elementos que pueden estar en dos estados
(prendidos o apagados).

El sistema de numeracin binario:


representacin de este tipo de datos. Utiliza
dos smbolos el 1 y el 0.
Facultad Ingeniera 1. Arquitectura de un
Departamento de Ingeniera de Sistemas e Industrial Computador
Programacin de Computadores
Modulo 1. Introduccin

Cdigo Binario
Cada 1 en un nmero binario representa
una potencia de 2 segn su posicin

Ejemplo: El nmero binario 100110 representa


el valor 38

1 0 0 1 1 0
25 24 23 22 21 20
1*32 + 0*16+ 0*8+ 1*4+ 1*2+ 0*1= 38

Facultad Ingeniera 1. Arquitectura de un


Departamento de Ingeniera de Sistemas e Industrial Computador
Programacin de Computadores
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 1. Arquitectura de un


Departamento de Ingeniera de Sistemas e Industrial Computador
Programacin de Computadores
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 1. Arquitectura de un


Departamento de Ingeniera de Sistemas e Industrial Computador
Programacin de Computadores
Modulo 1. Introduccin

Software
Software: conjunto de instrucciones que le dicen
al hardware que hacer.
Sistema Operativo

Herramientas de Desarrollo

Aplicaciones

Facultad Ingeniera 1. Arquitectura de un


Departamento de Ingeniera de Sistemas e Industrial Computador
Programacin de Computadores
Modulo 1. Introduccin

Arquitectura de Software
Lenguaje Lenguaje Lenguaje Hardware
Alto Nivel Ensamblador Maquina

Sistema Operativo

Aplicaciones Herramientas

Facultad Ingeniera 1. Arquitectura de un


Departamento de Ingeniera de Sistemas e Industrial Computador
Programacin de Computadores
Modulo 1. Introduccin

Sistema Operativo

Software encargado de administrar los recursos del


sistema.
Ofrece un conjunto de comandos a los humanos,
para interactuar con la mquina.
Puede ser escrito en lenguaje de alto nivel, en
lenguaje ensamblador y/o en lenguaje mquina.

Facultad Ingeniera 1. Arquitectura de un


Departamento de Ingeniera de Sistemas e Industrial Computador
Programacin de Computadores
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 1. Arquitectura de un


Departamento de Ingeniera de Sistemas e Industrial Computador
Programacin de Computadores
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 Computadores
Modulo 1. Introduccin

Lenguaje de Alto Nivel


Es un lenguaje con una estructura sintctica mas
rica que le permite mayor expresividad.

Cuenta con un conjunto de palabras reservadas,


para codificar estructuras de control e
instrucciones.

Permite el uso de expresiones aritmticas y


relacionales.
Facultad Ingeniera 1. Arquitectura de un
Departamento de Ingeniera de Sistemas e Industrial Computador
Programacin de Computadores
Modulo 1. Introduccin

Lenguaje de Alto Nivel

COMPILADORES e INTERPRETES: software


capaz de traducir de un lenguaje de alto nivel al
lenguaje de mquina.

C++ Java Python

Facultad Ingeniera 1. Arquitectura de un


Departamento de Ingeniera de Sistemas e Industrial Computador
Programacin de Computadores
Modulo 1. Introduccin

Aplicaciones
APLICACIN: software que le permite al
computador realizar una tarea especfica.

Procesadores de Texto Video Juegos Hojas de Calculo

Facultad Ingeniera 1. Arquitectura de un


Departamento de Ingeniera de Sistemas e Industrial Computador
Programacin de Computadores
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 1. Arquitectura de un


Departamento de Ingeniera de Sistemas e Industrial Computador
Programacin de Computadores
Modulo 1. Introduccin

2. Problemas

Se tiene un problema cuando se desea


encontrar uno o varios objetos desconocidos
(ya sean estos nmeros, smbolos, diagramas,
figuras, u otras cosas), que cumplen
condiciones o relaciones, previamente
definidas, respecto a uno o varios objetos
conocidos.

Facultad Ingeniera UN-Virtual


Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
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 2. Problemas


Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
Modulo 1. Introduccin

Tipos de problemas

Problemas bien condicionados

Problemas mal condicionados

Problemas indecidibles

Facultad Ingeniera 2. Problemas


Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
Modulo 1. Introduccin

Ejemplo de problema bien


condicionado

Un granjero tiene cincuenta animales entre


conejos y gansos. Si la cantidad de patas de
los animales es ciento cuarenta, Cuantos
conejos y cuantos gansos tiene el granjero?

Facultad Ingeniera 2. Problemas


Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
Modulo 1. Introduccin

Ejemplos de problemas mal


condicionados
De las siguientes imgenes, cul
es la ms llamativa?

Facultad Ingeniera 2. Problemas


Departamento de Ingeniera de Sistemas e Industrial
Mdulo 1
Introduccin

Ejemplos de problemas
indecidible

Existe en la expansin decimal de Pi una secuencia de


tamao n para cualquier nmero natural n?

Facultad Ingeniera 2. Problemas


Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
Modulo 1. Introduccin

3. Algoritmo

Secuencia bien definida y finita de tareas


bien definidas, cada una de las cuales se
puede realizar con una cantidad de
recursos finitos.

Facultad Ingeniera UN- Virtual


Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
Modulo 1. Introduccin

Caractersticas de un Algoritmo
De finitud o
Precisin Finitud
Determinismo

Hay un orden Todas las veces que se El algoritmo


preciso en el realicen las tareas o debe terminar
cual deben pasos de un algoritmo, en algn mo-
ejecutarse las con las mismas condi- mento y debe
tareas que ciones iniciales, se de- usar una can-
conforman el ben obtener resultados tidad finita de
algoritmo. idnticos. recursos.
Facultad Ingeniera 2. Problemas
Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
Modulo 1. Introduccin

Estructura de un Algoritmo

Datos Instrucciones Estructuras de


control
Para almacenar Las acciones o Las que determinan
informacin: da- procesos que el el orden en que se
tos de entrada, algoritmo realiza ejecutarn las ins-
de salida o inter- sobre los datos. trucciones del algo-
medios. ritmo.

Facultad Ingeniera 2. Problemas


Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
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 2. Problemas


Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
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 2. Problemas


Departamento de Ingeniera de Sistemas e Industrial
Mdulo 1
Introduccin

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 3. Algoritmos
Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
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 3. Algoritmos
Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
Modulo 1. Introduccin

Representacin de
Algoritmos
Las representaciones ms conocidas
son:

Diagramas de flujo.

Pseudo-cdigo.

Facultad Ingeniera 3. Algoritmos


Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
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 3. Algoritmos


Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
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 3. Algoritmos


Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
Modulo 1. Introduccin

Pseudo Cdigo
leer A, B, C sino
si A>B si B>C
si A>C Mayor B
Mayor A
sino
sino
Mayor C
Mayor C
fin_si fin_si
fin_si
escribir Mayor
Facultad Ingeniera 3. Algoritmos
Departamento de Ingeniera de Sistemas e Industrial
Mdulo 1
Introduccin

4. Solucin de Problemas
Algortmicos

Problema

Metodologa

Programa

Facultad Ingeniera UN - Virtual


Departamento de Ingeniera de Sistemas e Industrial
Programacin de Computadores
Modulo 1. Introduccin

Metodologa de
Programacin
Anlisis del problema.
Especificacin del problema.
Diseo del algoritmo.
Prueba del algoritmo y refinamiento.
Codificacin.
Prueba y verificacin.
Facultad Ingeniera 4. Solucin de Problemas
Departamento de Ingeniera de Sistemas e Industrial Algoritmicos
Programacin de Computadores
Modulo 1. Introduccin

Anlisis del Problema


Entender de manera clara el problema que se
esta resolviendo.

Esta fase de la metodologa concuerda con el


proceso de identificacin de objetos conocidos,
objetos desconocidos y condiciones usado en la
seccin de problemas.

Facultad Ingeniera 4. Solucin de Problemas


Departamento de Ingeniera de Sistemas e Industrial Algoritmicos
Programacin de Computadores
Modulo 1. Introduccin

Especificacin del Problema


Descripcin clara y precisa de:

Las entradas del problema.


Las salidas del problema.
Las condiciones, es decir la dependencia que
mantendrn las salidas obtenidas con las
entradas recibidas.

Facultad Ingeniera 4. Solucin de Problemas


Departamento de Ingeniera de Sistemas e Industrial Algoritmicos
Programacin de Computadores
Modulo 1. Introduccin

Ejemplo de Especificacin
Entradas: La cantidad total de animales (50),
cantidad de patas totales (140).

Salidas: La cantidad de conejos y la cantidad de


gansos.

Condiciones: La suma de conejos y gansos es


igual a cincuenta. La suma de las patas de los
conejos (cuatro por cada uno) y de los gansos
(dos por cada uno) es igual a ciento cuarenta.
Facultad Ingeniera 4. Solucin de Problemas
Departamento de Ingeniera de Sistemas e Industrial Algoritmicos
Programacin de Computadores
Modulo 1. Introduccin

Ejemplo de Especificacin
Problema:
Construir un 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 Computadores
Modulo 1. Introduccin

Diseo del algoritmo


Es la fase en la que se construye el algoritmo
que permitir encontrar la solucin al
problema.

La forma adecuada de realizar este proceso


es subdividirlo.

Facultad Ingeniera 4. Solucin de Problemas


Departamento de Ingeniera de Sistemas e Industrial Algoritmicos
Programacin de Computadores
Modulo 1. Introduccin

Prueba del Algoritmo y


Refinamiento

Proceso de seguimiento del algoritmo para


verificar que cumple con la especificacin. Si
no se cumple con la especificacin se va
refinando hasta lograr el objetivo.

Facultad Ingeniera 4. Solucin de Problemas


Departamento de Ingeniera de Sistemas e Industrial Algoritmicos
Programacin de Computadores
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 4. Solucin de Problemas


Departamento de Ingeniera de Sistemas e Industrial Algoritmicos
Programacin de Computadores
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 4. Solucin de Problemas


Departamento de Ingeniera de Sistemas e Industrial Algoritmicos
Programacin de Computadores
Modulo 1. Introduccin

FIN
Gracias por la atencin
prestada

Facultad Ingeniera UN- Virtual


Departamento de Ingeniera de Sistemas e Industrial

Potrebbero piacerti anche

  • Placas Interceptoras
    Placas Interceptoras
    Documento15 pagine
    Placas Interceptoras
    Xuxa Sánchez Lynton
    Nessuna valutazione finora
  • Solicitud de Arrendamientos V6
    Solicitud de Arrendamientos V6
    Documento2 pagine
    Solicitud de Arrendamientos V6
    Xuxa Sánchez Lynton
    Nessuna valutazione finora
  • Entrega Cero Ciclos
    Entrega Cero Ciclos
    Documento2 pagine
    Entrega Cero Ciclos
    Xuxa Sánchez Lynton
    Nessuna valutazione finora
  • Siadex PDF
    Siadex PDF
    Documento8 pagine
    Siadex PDF
    Xuxa Sánchez Lynton
    Nessuna valutazione finora
  • Is Clase1 Metodologia-V1
    Is Clase1 Metodologia-V1
    Documento26 pagine
    Is Clase1 Metodologia-V1
    Xuxa Sánchez Lynton
    Nessuna valutazione finora
  • Buffered Reader
    Buffered Reader
    Documento2 pagine
    Buffered Reader
    Xuxa Sánchez Lynton
    Nessuna valutazione finora
  • Clase 9
    Clase 9
    Documento25 pagine
    Clase 9
    Xuxa Sánchez Lynton
    Nessuna valutazione finora
  • A0097 08a
    A0097 08a
    Documento5 pagine
    A0097 08a
    Xuxa Sánchez Lynton
    Nessuna valutazione finora
  • Resumen 5
    Resumen 5
    Documento3 pagine
    Resumen 5
    Xuxa Sánchez Lynton
    Nessuna valutazione finora