Programacion de computadores

Módulo 1 Introducció n rogramación de omputadore s Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industr

Views 165 Downloads 0 File size 851KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Módulo 1 Introducció n

rogramación de omputadore s Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

UN - Virtual 2008

Programación de Computado Modulo 1. Introducción

CONTENIDO 1. Arquitectura de un Computador 2. Problemas 3. Algoritmo 4. Solución de problemas Algorítmicos Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

UN - Virtual 2008

Programación de Computado Modulo 1. Introducción

Arquitectura de un Está dividida en dos Computador 1.

partes importantes:

Hardware: Es la que hace referencia a la parte física de un computador y de cualquier dispositivo electrónico.

CPU

La Arquitectura Von Newman

Software: Es la que hace referencia a la parte lógica de un computador. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

UN - Virtual 2008

Programación de Computado Modulo 1. Introducción

Hardware • Unidad central de Proceso • Dispositivos de entrada, salida, almacenamiento, comunicación y cómputo • Memoria

CPU

La Arquitectura Von Newman Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

1. Arquitectura de Computador

Programación de Computado Modulo 1. Introducción

Unidad Central de Proceso (CPU)

Micropocesador Athlon 64 X2 E6 3800+

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

1. Arquitectura del Computador

Programación de Computado Modulo 1. Introducción

Dispositivos Entrada

Salida

Cómputo

Comunicación

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

Almacenamiento

1. Arquitectura de un Computador

Programación de Computado Modulo 1. Introducción

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 rápido, usada como puente entre la UCP y la memoria RAM, para evitar las demoras en la consulta de la memoria RAM. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

1. Arquitectura de un Computador

Programación de Computado Modulo 1. Introducción

Representación en Memoria

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

El sistema de numeración binario: representación de este tipo de datos. Utiliza dos símbolos el 1 y el 0. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

1. Arquitectura de un Computador

Programación de Computado Modulo 1. Introducción

Código Binario Cada 1 en un número binario representa una potencia de 2 según su posición Ejemplo: El número representa el valor 38

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

binario

100110

1. Arquitectura de un Computador

Programación de Computado Modulo 1. Introducción

Medida de la Memoria Unidad básica de información: BIT que corresponde a un único dígito 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 Ingeniería Departamento de Ingeniería de Sistemas e Industrial

1. Arquitectura de un Computador

Programación de Computado Modulo 1. Introducción

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 Ingeniería Departamento de Ingeniería de Sistemas e Industrial

1. Arquitectura de un Computador

Programación de Computado Modulo 1. Introducción

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

Sistema Operativo Herramientas de Desarrollo Aplicaciones

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

1. Arquitectura de un Computador

Programación de Computado Modulo 1. Introducción

Arquitectura de Software Lenguaje Alto Nivel

Lenguaje Lenguaje Hardware EnsambladorMaquina

Sistema Operativo

Aplicacione s Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

Herramientas 1. Arquitectura de un Computador

Programación de Computado Modulo 1. Introducción

Sistema Operativo

Software encargado de administrar los recursos del sistema. Ofrece un conjunto de comandos a los humanos, para interactuar con la máquina. Puede ser escrito en lenguaje de alto nivel, en lenguaje ensamblador y/o en lenguaje máquina. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

1. Arquitectura de un Computador

Programación de Computado Modulo 1. Introducción

Lenguaje de Máquina Único lenguaje que entiende el hardware (máquina). Específico para cada hardware (procesador, dispositivos, etc.). Programa: almacenado en memoria, contiene instrucciones y datos. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

1. Arquitectura de un Computador

Programación de Computado Modulo 1. Introducción

Lenguaje Ensamblador Software, generalmente escrito en lenguaje de máquina, capaz de traducir de lenguaje ensamblador a lenguaje de máquina. Usa mnemónicos para codificar las operaciones. Los datos y/o direcciones son codificados generalmente como números en sistema hexadecimal. Es específico (aunque no único) para cada lenguaje de máquina. Facultad Ingeniería 1. Arquitectura de un Departamento de Ingeniería de Sistemas e Industrial

Computador

Programación de Computado Modulo 1. Introducción

Lenguaje de Alto Nivel Es un lenguaje con una estructura sintáctica 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 aritméticas y relacionales. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

1. Arquitectura de un Computador

Programación de Computado Modulo 1. Introducción

Lenguaje de Alto Nivel COMPILADORES e INTERPRETES: software capaz de traducir de un lenguaje de alto nivel al lenguaje de máquina. C++

Java

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

Python

1. Arquitectura de un Computador

Programación de Computado Modulo 1. Introducción

Aplicaciones APLICACIÓN: software que le permite al computador realizar una tarea específica.

Procesadores de Texto

Video Juegos

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

Hojas de Calculo 1. Arquitectura de un Computador

Programación de Computado Modulo 1. Introducción

Herramientas de Desarrollo Es una aplicación que presenta un ambiente en el que, empleando un lenguaje de programación, se puede desarrollar nuevo software. Ejemplos: ambientes integrados de desarrollo como DevC++, Visual C++, en los que se emplea el lenguaje C++.

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

1. Arquitectura de un Computador

Programación de Computado Modulo 1. Introducción

2.

Problemas

Se tiene un problema cuando se desea encontrar uno o varios objetos desconocidos (ya sean estos números, símbolos, diagramas, figuras, u otras cosas), que cumplen condiciones o relaciones, previamente definidas, respecto a uno o varios objetos conocidos. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

UN-Virtual

Programación de Computado Modulo 1. Introducción

Solución de problema Solucionar el problema es encontrar los objetos desconocidos. Para solucionar un problema se debe determinar de manera clara y concisa: cuáles son los objetos conocidos, las condiciones y de que tipo son los objetos desconocidos. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

2. Problemas

Programación de Computado Modulo 1. Introducción

Tipos de problemas Problemas bien condicionados Problemas mal condicionados Problemas indecidibles

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

2. Problemas

Programación de Computado Modulo 1. Introducción

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 Ingeniería Departamento de Ingeniería de Sistemas e Industrial

2. Problemas

Programación de Computado Modulo 1. Introducción

Ejemplos de problemas mal condicionados De las siguientes imágenes, cuál es la más llamativa?

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

2. Problemas

Módulo 1 Introducció n

Ejemplos de problemas indecidible ¿Existe en la expansión decimal de Pi una secuencia de tamaño n para cualquier número natural n?

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

2. Problemas

Programación de Computado Modulo 1. Introducción

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 Ingeniería Departamento de Ingeniería de Sistemas e Industrial

UN- Virtual

Programación de Computado Modulo 1. Introducción

Características de un Algoritmo De finitud o

Precisión

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 idénticos. Facultad Ingeniería el Departamento de Ingeniería de Sistemas e Industrial algoritmo.

Finitud

El algoritmo debe terminar en algún momento y debe usar una cantidad finita 2. Problemas de recursos.

Programación de Computado Modulo 1. Introducción

Estructura de un Algoritmo Datos

Instruccione s

Estructuras de control

Para almacenar información: 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 ejecutarán las instrucciones del algo-ritmo.

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

2. Problemas

Programación de Computado Modulo 1. Introducción

Ejemplo de algoritmo Un estudiante se encuentra en su casa (durmiendo) y debe ir a la universidad (a tomar la clase de programación!!), ¿Que debe hacer el estudiante?

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

2. Problemas

Programación de Computado Modulo 1. Introducción

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. Bañarse. 3.1.2. Vestirse. 3.1.3. Desayunar. 3.2. No, entonces 3.2.1. Vestirse. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

2. Problemas

Módulo 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 demás personas que esperan un bus. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

3. Algoritmos

Programación de Computado Modulo 1. Introducción

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 salón donde se dicta su curso de programación. 14. Ingresar al salón. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

3. Algoritmos

Programación de Computado Modulo 1. Introducción

Representación de Algoritmos Las representaciones más conocidas son: Diagramas de flujo. Pseudo-código. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

3. Algoritmos

Programación de Computado Modulo 1. Introducción

Diagramas de Flujo Esquema de representación gráfico de algoritmos. Usa elementos gráficos como rectángulos y rombos. Se pueden usar operaciones matemáticas. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

3. Algoritmos

Programación de Computado Modulo 1. Introducción

Pseudo Código Esquema de representación de algoritmos que usa un subconjunto del lenguaje natural del diseñador de algoritmos. Elimina posibles ambigüedades empleando una notación que aunque libre es más restringida que la del lenguaje natural. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

3. Algoritmos

Programación de Computado Modulo 1. Introducción

Pseudo Código leer A, B, C si A>B si A>C Mayor  A sino Mayor  C fin_si

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

sino si B>C Mayor



B



C

sino Mayor

fin_si fin_si escribir Mayor 3. Algoritmos

Módulo 1 Introducció n

Solución de Problemas Algorítmicos

4.

Problema

Metodología

Programa Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

UN - Virtual

Programación de Computado Modulo 1. Introducción

Metodología de Programación

 Análisis del problema.  Especificación del problema.  Diseño del algoritmo.  Prueba del algoritmo

y

refinamiento.  Codificación.  Prueba y verificación. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

4. Solución de Problemas Algoritmicos

Programación de Computado Modulo 1. Introducción

Análisis del Problema Entender de manera clara el problema que se esta resolviendo. Esta fase de la metodología concuerda con el proceso de identificación de objetos conocidos, objetos desconocidos y condiciones usado en la sección de problemas. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

4. Solución de Problemas Algoritmicos

Programación de Computado Modulo 1. Introducción

Especificación del Problema

Descripción clara y precisa de:

Las entradas del problema. Las salidas del problema. Las condiciones, es decir la dependencia que mantendrán las salidas obtenidas con las entradas recibidas. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

4. Solución de Problemas Algoritmicos

Programación de Computado Modulo 1. Introducción

Ejemplo de Especificación

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 Ingeniería igual a ciento cuarenta. Facultad 4. Solución de Problemas Departamento de Ingeniería de Sistemas e Industrial

Algoritmicos

Programación de Computado Modulo 1. Introducción

Ejemplo de Problema: Construir unEspecificación algoritmo que determine el mayor de tres números enteros. Especificación: Entradas: A,B,C (números de entrada) de tipo entero. Salidas: Mayor de tipo entero. Condiciones: Mayor debe ser el valor máximo de A, B y C. Facultad Ingeniería 4. Solución de Problemas Departamento de Ingeniería de Sistemas e Industrial

Algoritmicos

Programación de Computado Modulo 1. Introducción

Diseño del algoritmo Es la fase en la que se construye el algoritmo que permitirá encontrar la solución al problema. La forma adecuada de realizar este proceso es subdividirlo.

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

4. Solución de Problemas Algoritmicos

Programación de Computado Modulo 1. Introducción

Prueba del Algoritmo y Refinamiento Proceso de seguimiento del algoritmo para verificar que cumple con la especificación. Si no se cumple con la especificación se va refinando hasta lograr el objetivo.

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

4. Solución de Problemas Algoritmicos

Programación de Computado Modulo 1. Introducción

Codificación Proceso en el cual se escribe el algoritmo en un lenguaje de programación, utilizando el editor de la herramienta.

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

4. Solución de Problemas Algoritmicos

Programación de Computado Modulo 1. Introducción

Prueba y Verificación Proceso en el cual se corrigen los errores de sintaxis y de lógica del programa, hasta lograr que el programa resuelva el problema.

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

4. Solución de Problemas Algoritmicos

Programación de Computado Modulo 1. Introducción

FIN Gracias por la atención prestada

Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial

UN- Virtual