fundamentos de programación organización de una computadora
TRANSCRIPT
![Page 1: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/1.jpg)
Fundamentos de programación
Organización de una computadora
![Page 2: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/2.jpg)
Datos
• Una computadora procesa datos• Los convierte en información significativa• Datos >> Computadora >> Información
![Page 3: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/3.jpg)
Calculadora
• Una calculadora efectúa operaciones sobre datos de entrada y produce resultados
• Las operaciones no están almacenadas• El usuario (operador) es quien indica las
operaciones• Si es programable, es computadora
![Page 4: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/4.jpg)
Modelo de von Newmann
• Programa (conjunto de instrucciones) almacenado en memoria
• Se ejecutan las instrucciones en secuencia• Permite la aplicación de algoritmos
![Page 5: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/5.jpg)
Computadora
• Proporciona la capacidad de:– Aceptar la entrada– Visualizar o presentar la salida– Almacenar la información– Ejecutar operaciones aritméticas o lógicas sobre
los datos de entrada o de salida– Monitorizar, controlar y dirigir operaciones
globales y de secuencia del sistema
![Page 6: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/6.jpg)
Componentes más importantes
Procesador (CPU)Procesador (CPU)
Unidad Aritmética Lógica
Unidad Aritmética Lógica
Unidad de ControlUnidad de ControlEntradaEntrada SalidaSalida
MemoriaMemoria Almacenam secundarioAlmacenam secundario
![Page 7: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/7.jpg)
El procesador
• Dispositivo que ejecuta la instrucciones del programa
• También conocido como CPU (no confundir con el gabinete
• Si el procesador está en un solo chip, se le conoce como microprocesador
![Page 8: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/8.jpg)
Datos, algoritmos y lenguajes
Conocer las herramientas, anta de pretender usarlas
![Page 9: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/9.jpg)
Datos e información
• Datos– Representación de algún hecho, concepto o
entidad real
• Información– Datos procesados y organizados
![Page 10: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/10.jpg)
Sistema
• Conjunto de componentes interconectados e interactivos que tienen un propósito y una unidad total
![Page 11: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/11.jpg)
Resolución de problemas con computadoras
Si existe el algoritmo, el problema está CASI resuelto
![Page 12: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/12.jpg)
Fases en la resolución de problemas
• Análisis del problema• Diseño del algoritmo• Codificación• Compilación y ejecución• Verificación• Depuración• Mantenimiento• Documentación
![Page 13: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/13.jpg)
Análisis
• El problema se analiza– Comprensión de la naturaleza del problema, bien
definido– Especificación de requisitos del cliente,
particularmente los datos de entrada y la salida esperada
– Se deben conocer los datos involucrados, y eliminar los que no son relevantes
– Se debe conocer la información que el cliente espera y su presentación
![Page 14: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/14.jpg)
Diseño
• Se diseña la solución que conducirá a un algoritmo que resuelva el problema
• Descomponer el problema en subproblemas y estos en sub-sub-problemas, sucesivamente
• Se debe llegar a problemas simples, cuya solución sea implementable en la computadora
• A esto se le denomina diseño descendente, también conocido como divide y vencerás
![Page 15: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/15.jpg)
Algoritmo
La parte intelectual de la resolución del problema.
El resto, es talacha
![Page 16: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/16.jpg)
Algoritmo
• Conjunto de tareas o pasos en una cantidad finita que se ejecutan en un orden determinado, y para determinada situación inicial se resuelve el problema en un tiempo finito.
Situación inicial >> algoritmo >> solución
![Page 17: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/17.jpg)
Características de un algoritmo• Correcto (resolver el problema)• Eficiente (recursos y tiempo)• Claro• Flexible (adaptable)• Preciso (bien definido el orden de pasos)• Bien definido (mismo resultado para cada mismo
problema)• Finito (debe terminar, en un número finito de
pasos)• Fiable (proporcionar solución)
![Page 18: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/18.jpg)
Representación gráfica de un algoritmo
Métodos de representación:– Diagrama de flujo– Diagrama N-S (Nassi-Schneiderman)– Lenguaje de especificación de algoritmos:
Pseudocódigo– Lenguaje natural (español)– Fórmulas
![Page 19: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/19.jpg)
Diagrama de flujo
• Se utilizan símbolos (cajas) estándar que representan los pasos del algoritmo
• Unidos por flechas: líneas de flujo
• Los símbolos están normalizados por ANSI
![Page 20: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/20.jpg)
Diagrama N-S
• También conocido como diagrama de chaplin• Como el diagrama de flujo, pero se omiten
líneas de flujo y las cajas son contiguas
![Page 21: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/21.jpg)
Pseudocódigo
• Describe el algoritmo de manera simple• Su conversión a código en un lenguaje es
simple• El desarrollador se concentra en la lógica y
estructuras de control, sin pensar en el lenguaje
• Lo escrito en pseudocódigo se convierte en comentarios del lenguaje
![Page 22: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/22.jpg)
Pseudocódigo
Calcular el valor de la suma 1+2+3+…+100Seudocódigo:1. Establecer Contador a 12. Establecer Suma a 03. mientras Contador <= 100 hacer
Sumar Contador a SumaIncrementar Contador en 1fin-mientras
4. Visualizar Suma
![Page 23: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/23.jpg)
Lenguaje natural
• Se describen los pasos en simple lenguaje natural
• En nuestro caso: español
![Page 24: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/24.jpg)
Fórmulas
• Las fórmulas expresan las operaciones necesarias para obtener el resultado a partir de los datos de entrada y algunas constantes
![Page 25: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/25.jpg)
Diagramas de Flujo
![Page 26: Fundamentos de programación Organización de una computadora](https://reader036.vdocumento.com/reader036/viewer/2022062807/5665b45f1a28abb57c90f48b/html5/thumbnails/26.jpg)
Pseudocódigo