SlideShare ist ein Scribd-Unternehmen logo
1 von 51
Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  UN - Virtual 2008 Módulo 1 Introducción P C rogramación de omputadores
[object Object],[object Object],[object Object],Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  UN - Virtual 2008 Programación de Computadores Modulo 1. Introducción
CONTENIDO ,[object Object],[object Object],[object Object],[object Object],Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  UN - Virtual 2008 Programación de Computadores Modulo 1. Introducción
Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  UN - Virtual 2008 Los precursores del Computador Programación de Computadores Modulo 1. Introducción Abaco La maquina calculadora de Pascal 1642 Motor de diferencias de Babbage 1812 Mark I 1944 Eniac 1947 PC …
Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  UN - Virtual 2008 Módulo 1 Introducción
Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  UN - Virtual 2008 1.  Arquitectura de un Computador ,[object Object],[object Object],[object Object],[object Object],Programación de Computadores Modulo 1. Introducción CPU
Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  1. Arquitectura de Computador Hardware ,[object Object],[object Object],[object Object],[object Object],Programación de Computadores Modulo 1. Introducción CPU
Unidad Central de Proceso (CPU) Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  1. Arquitectura del Computador Microprocesador  Athlon 64 X2 E6 3800+  Programación de Computadores Modulo 1. Introducción
Dispositivos Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  1. Arquitectura de un Computador Entrada Salida Almacenamiento Comunicaci ón Cómputo Programación de Computadores Modulo 1. Introducción
Tipos de memoria Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  1. Arquitectura de un Computador Programación de Computadores Modulo 1. Introducción ,[object Object],[object Object],[object Object]
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 Computadores 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 binario 100110 representa el valor 38   Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  1. Arquitectura de un Computador Programación de Computadores 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 Computadores Modulo 1. Introducción
Cantidades de Memoria 1 Kilo Byte  = 2 10  Bytes = 1024 Bytes 1 Mega Byte = 2 10  KBytes = 2 20  Bytes  = 1048576 Bytes 1 Giga Byte  = 2 10  MBytes = 2 30  Bytes 1 Tera Byte  = 2 10  GBytes = 2 40  Bytes Ejemplos: Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  1. Arquitectura de un Computador Programación de Computadores Modulo 1. Introducción
Software:  conjunto de instrucciones que le dicen al hardware que hacer. Software Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  1. Arquitectura de un Computador Programación de Computadores Modulo 1. Introducción Sistema Operativo Herramientas de Desarrollo Aplicaciones
Lenguaje Maquina Lenguaje Alto Nivel Hardware Lenguaje Ensamblador Sistema Operativo Aplicaciones Herramientas Arquitectura de Software Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  1. Arquitectura de un Computador Programación de Computadores 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 Computadores 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 Computadores Modulo 1. Introducción
Lenguaje Ensamblador 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 Departamento de Ingeniería de Sistemas e Industrial  1. Arquitectura de un Computador Programación de Computadores 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 Computadores Modulo 1. Introducción
Compiladores e interpretes Software capaz de traducir de un lenguaje de alto nivel al lenguaje de máquina.  Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  1. Arquitectura de un Computador C++     Java   Python Programación de Computadores Modulo 1. Introducción
Aplicaciones APLICACIÓN:   software que le permite al computador realizar una tarea específica. Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  1. Arquitectura de un Computador Video Juegos Hojas de Calculo Procesadores de Texto Programación de Computadores Modulo 1. Introducción
Herramientas de Desarrollo Son aplicaciones con las cuales 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 Computadores 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 Computadores 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 Computadores 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 Computadores 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 Computadores 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 Programación de Computadores Modulo 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 Módulo 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 Computadores Modulo 1. Introducción
Características de un Algoritmo Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  2. Problemas Programación de Computadores Modulo 1. Introducción Precisión Definitud o Determinismo Finitud Hay un orden preciso en el cual deben ejecutarse las tareas que conforman el algoritmo. Todas las veces que se realicen las tareas o pasos de un algoritmo, con las mismas condi-ciones iniciales, se de-ben obtener resultados idénticos. El algoritmo debe terminar en algún mo-mento y debe usar una can-tidad finita de recursos.
Estructura de un Algoritmo Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  2. Problemas Programación de Computadores Modulo 1. Introducción Datos Instrucciones Estructuras de control Para almacenar información: da-tos de entrada, de salida o inter-medios. Las acciones o procesos que el algoritmo realiza sobre los datos. Las que determinan el orden en que se ejecutarán las ins-trucciones del algo-ritmo.
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 Computadores Modulo 1. Introducción
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Ejemplo de algoritmo Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  2. Problemas Programación de Computadores Modulo 1. Introducción
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Ejemplo de algoritmo Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  3. Algoritmos Módulo 1 Introducción
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Ejemplo de algoritmo Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  3. Algoritmos Programación de Computadores Modulo 1. Introducción
Representación de Algoritmos ,[object Object],[object Object],[object Object],Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  3. Algoritmos Programación de Computadores 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 Computadores Modulo 1. Introducción
Pseudo Código Esquema de representación de algoritmos similar al lenguaje natural y cercana a la utilizada en los lenguajes de programación. 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 Computadores Modulo 1. Introducción
sino si B>C Mayor    B sino Mayor    C fin_si fin_si escribir Mayor 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  3. Algoritmos Programación de Computadores Modulo 1. Introducción
4.  Solución de Problemas Algorítmicos Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  UN - Virtual Módulo 1 Introducción
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Metodología de Programación Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  4. Soluci ón de Problemas Algoritmicos Programación de Computadores 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 Computadores Modulo 1. Introducción
[object Object],[object Object],[object Object],[object Object],Especificación del Problema  Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  4. Soluci ón de Problemas Algoritmicos Programación de Computadores 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 igual a ciento cuarenta. Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  4. Soluci ón de Problemas Algoritmicos Programación de Computadores Modulo 1. Introducción
Problema:  Construir un 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. Ejemplo de Especificación Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  4. Soluci ón de Problemas Algoritmicos Programación de Computadores 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 Computadores 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 Computadores 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 Computadores 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 Computadores Modulo 1. Introducción
FIN Gracias por la atención prestada Facultad  Ingeniería Departamento de Ingeniería de Sistemas e Industrial  UN- Virtual Programación de Computadores Modulo 1. Introducción

Weitere ähnliche Inhalte

Was ist angesagt? (17)

5. entrada
5. entrada5. entrada
5. entrada
 
Libro de informatica
Libro de informaticaLibro de informatica
Libro de informatica
 
Dossier de educacion tecnologica 1er año esja
Dossier de educacion tecnologica 1er año esjaDossier de educacion tecnologica 1er año esja
Dossier de educacion tecnologica 1er año esja
 
Evaluación de diagnostico de informática
Evaluación de diagnostico   de informáticaEvaluación de diagnostico   de informática
Evaluación de diagnostico de informática
 
Iats practicas 1
Iats practicas 1Iats practicas 1
Iats practicas 1
 
Tema1 b
Tema1 bTema1 b
Tema1 b
 
Informática
InformáticaInformática
Informática
 
Dispositivos De Entrada
Dispositivos De EntradaDispositivos De Entrada
Dispositivos De Entrada
 
El computador definicion
El computador definicionEl computador definicion
El computador definicion
 
Lenguaje ensamblador
Lenguaje ensamblador   Lenguaje ensamblador
Lenguaje ensamblador
 
Intro programacion conceptos_2012
Intro programacion conceptos_2012Intro programacion conceptos_2012
Intro programacion conceptos_2012
 
Notas clasepc
Notas clasepcNotas clasepc
Notas clasepc
 
Python101
Python101Python101
Python101
 
Generalidades
GeneralidadesGeneralidades
Generalidades
 
Programacion de sistemas
Programacion de sistemasProgramacion de sistemas
Programacion de sistemas
 
Modulo II
Modulo IIModulo II
Modulo II
 
PIPPIN
PIPPINPIPPIN
PIPPIN
 

Ähnlich wie Conferencia1

introduccion computadoras
introduccion computadorasintroduccion computadoras
introduccion computadorasPiCeGo
 
Introducción a las Computadoras
Introducción a las ComputadorasIntroducción a las Computadoras
Introducción a las ComputadorasPiCeGo
 
Apuntes de tics 2015 (1er parcial) (1)
Apuntes de tics 2015 (1er parcial) (1)Apuntes de tics 2015 (1er parcial) (1)
Apuntes de tics 2015 (1er parcial) (1)brianbgga
 
Apuntes de tics 2015 (1er parcial)
Apuntes de tics 2015 (1er parcial)Apuntes de tics 2015 (1er parcial)
Apuntes de tics 2015 (1er parcial)brianbgga
 
Apuntes de tics 2015 (1er parcial) (1)
Apuntes de tics 2015 (1er parcial) (1)Apuntes de tics 2015 (1er parcial) (1)
Apuntes de tics 2015 (1er parcial) (1)brianbgga
 
Qué Es Un Ordenador
Qué Es Un OrdenadorQué Es Un Ordenador
Qué Es Un OrdenadorMayte76
 
Manual programacion c++
Manual programacion c++Manual programacion c++
Manual programacion c++taker85
 
Algoritmos y programacion
Algoritmos y programacionAlgoritmos y programacion
Algoritmos y programacionLeomar Salazar
 
fundamentos de la programación, Introducción a la ciencia de la computación y...
fundamentos de la programación, Introducción a la ciencia de la computación y...fundamentos de la programación, Introducción a la ciencia de la computación y...
fundamentos de la programación, Introducción a la ciencia de la computación y...19025409
 

Ähnlich wie Conferencia1 (20)

Tema1
Tema1Tema1
Tema1
 
Tema1.ppt
Tema1.pptTema1.ppt
Tema1.ppt
 
01 introduccion
01 introduccion01 introduccion
01 introduccion
 
Introduccion.ppt
Introduccion.pptIntroduccion.ppt
Introduccion.ppt
 
Tema1
Tema1Tema1
Tema1
 
Informatica tema1.
Informatica tema1.Informatica tema1.
Informatica tema1.
 
introduccion computadoras
introduccion computadorasintroduccion computadoras
introduccion computadoras
 
Introducción a las Computadoras
Introducción a las ComputadorasIntroducción a las Computadoras
Introducción a las Computadoras
 
Apuntes de tics 2015 (1er parcial) (1)
Apuntes de tics 2015 (1er parcial) (1)Apuntes de tics 2015 (1er parcial) (1)
Apuntes de tics 2015 (1er parcial) (1)
 
Apuntes de tics 2015 (1er parcial)
Apuntes de tics 2015 (1er parcial)Apuntes de tics 2015 (1er parcial)
Apuntes de tics 2015 (1er parcial)
 
Apuntes de tics 2015 (1er parcial) (1)
Apuntes de tics 2015 (1er parcial) (1)Apuntes de tics 2015 (1er parcial) (1)
Apuntes de tics 2015 (1er parcial) (1)
 
Fp01
Fp01Fp01
Fp01
 
Qué Es Un Ordenador
Qué Es Un OrdenadorQué Es Un Ordenador
Qué Es Un Ordenador
 
Manual programacion c++
Manual programacion c++Manual programacion c++
Manual programacion c++
 
Algoritmos y programacion
Algoritmos y programacionAlgoritmos y programacion
Algoritmos y programacion
 
1 a intro
1 a intro1 a intro
1 a intro
 
Lenguaje de Programación
Lenguaje de ProgramaciónLenguaje de Programación
Lenguaje de Programación
 
Guia de-programacion-i-visual-b-net
Guia de-programacion-i-visual-b-netGuia de-programacion-i-visual-b-net
Guia de-programacion-i-visual-b-net
 
fundamentos de la programación, Introducción a la ciencia de la computación y...
fundamentos de la programación, Introducción a la ciencia de la computación y...fundamentos de la programación, Introducción a la ciencia de la computación y...
fundamentos de la programación, Introducción a la ciencia de la computación y...
 
Ec2
Ec2Ec2
Ec2
 

Conferencia1

  • 1. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial UN - Virtual 2008 Módulo 1 Introducción P C rogramación de omputadores
  • 2.
  • 3.
  • 4. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial UN - Virtual 2008 Los precursores del Computador Programación de Computadores Modulo 1. Introducción Abaco La maquina calculadora de Pascal 1642 Motor de diferencias de Babbage 1812 Mark I 1944 Eniac 1947 PC …
  • 5. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial UN - Virtual 2008 Módulo 1 Introducción
  • 6.
  • 7.
  • 8. Unidad Central de Proceso (CPU) Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial 1. Arquitectura del Computador Microprocesador Athlon 64 X2 E6 3800+ Programación de Computadores Modulo 1. Introducción
  • 9. Dispositivos Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial 1. Arquitectura de un Computador Entrada Salida Almacenamiento Comunicaci ón Cómputo Programación de Computadores Modulo 1. Introducción
  • 10.
  • 11. 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 Computadores Modulo 1. Introducción
  • 12. Código Binario Cada 1 en un número binario representa una potencia de 2 según su posición Ejemplo: El número binario 100110 representa el valor 38 Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial 1. Arquitectura de un Computador Programación de Computadores Modulo 1. Introducción
  • 13. 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 Computadores Modulo 1. Introducción
  • 14. Cantidades de Memoria 1 Kilo Byte = 2 10 Bytes = 1024 Bytes 1 Mega Byte = 2 10 KBytes = 2 20 Bytes = 1048576 Bytes 1 Giga Byte = 2 10 MBytes = 2 30 Bytes 1 Tera Byte = 2 10 GBytes = 2 40 Bytes Ejemplos: Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial 1. Arquitectura de un Computador Programación de Computadores Modulo 1. Introducción
  • 15. Software: conjunto de instrucciones que le dicen al hardware que hacer. Software Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial 1. Arquitectura de un Computador Programación de Computadores Modulo 1. Introducción Sistema Operativo Herramientas de Desarrollo Aplicaciones
  • 16. Lenguaje Maquina Lenguaje Alto Nivel Hardware Lenguaje Ensamblador Sistema Operativo Aplicaciones Herramientas Arquitectura de Software Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial 1. Arquitectura de un Computador Programación de Computadores Modulo 1. Introducción
  • 17. 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 Computadores Modulo 1. Introducción
  • 18. 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 Computadores Modulo 1. Introducción
  • 19. Lenguaje Ensamblador 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 Departamento de Ingeniería de Sistemas e Industrial 1. Arquitectura de un Computador Programación de Computadores Modulo 1. Introducción
  • 20. 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 Computadores Modulo 1. Introducción
  • 21. Compiladores e interpretes Software capaz de traducir de un lenguaje de alto nivel al lenguaje de máquina. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial 1. Arquitectura de un Computador C++ Java Python Programación de Computadores Modulo 1. Introducción
  • 22. Aplicaciones APLICACIÓN: software que le permite al computador realizar una tarea específica. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial 1. Arquitectura de un Computador Video Juegos Hojas de Calculo Procesadores de Texto Programación de Computadores Modulo 1. Introducción
  • 23. Herramientas de Desarrollo Son aplicaciones con las cuales 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 Computadores Modulo 1. Introducción
  • 24. 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 Computadores Modulo 1. Introducción
  • 25. 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 Computadores Modulo 1. Introducción
  • 26. 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 Computadores Modulo 1. Introducción
  • 27. 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 Computadores Modulo 1. Introducción
  • 28. 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 Programación de Computadores Modulo 1. Introducción
  • 29. 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 Módulo 1 Introducción
  • 30. 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 Computadores Modulo 1. Introducción
  • 31. Características de un Algoritmo Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial 2. Problemas Programación de Computadores Modulo 1. Introducción Precisión Definitud o Determinismo Finitud Hay un orden preciso en el cual deben ejecutarse las tareas que conforman el algoritmo. Todas las veces que se realicen las tareas o pasos de un algoritmo, con las mismas condi-ciones iniciales, se de-ben obtener resultados idénticos. El algoritmo debe terminar en algún mo-mento y debe usar una can-tidad finita de recursos.
  • 32. Estructura de un Algoritmo Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial 2. Problemas Programación de Computadores Modulo 1. Introducción Datos Instrucciones Estructuras de control Para almacenar información: da-tos de entrada, de salida o inter-medios. Las acciones o procesos que el algoritmo realiza sobre los datos. Las que determinan el orden en que se ejecutarán las ins-trucciones del algo-ritmo.
  • 33. 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 Computadores Modulo 1. Introducción
  • 34.
  • 35.
  • 36.
  • 37.
  • 38. 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 Computadores Modulo 1. Introducción
  • 39. Pseudo Código Esquema de representación de algoritmos similar al lenguaje natural y cercana a la utilizada en los lenguajes de programación. 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 Computadores Modulo 1. Introducción
  • 40. sino si B>C Mayor  B sino Mayor  C fin_si fin_si escribir Mayor 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 3. Algoritmos Programación de Computadores Modulo 1. Introducción
  • 41. 4. Solución de Problemas Algorítmicos Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial UN - Virtual Módulo 1 Introducción
  • 42.
  • 43. 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 Computadores Modulo 1. Introducción
  • 44.
  • 45. 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 igual a ciento cuarenta. Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial 4. Soluci ón de Problemas Algoritmicos Programación de Computadores Modulo 1. Introducción
  • 46. Problema: Construir un 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. Ejemplo de Especificación Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial 4. Soluci ón de Problemas Algoritmicos Programación de Computadores Modulo 1. Introducción
  • 47. 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 Computadores Modulo 1. Introducción
  • 48. 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 Computadores Modulo 1. Introducción
  • 49. 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 Computadores Modulo 1. Introducción
  • 50. 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 Computadores Modulo 1. Introducción
  • 51. FIN Gracias por la atención prestada Facultad Ingeniería Departamento de Ingeniería de Sistemas e Industrial UN- Virtual Programación de Computadores Modulo 1. Introducción