Please enable JavaScript.
Coggle requires JavaScript to display documents.
Fundamentos de Programación, Concepto, características, Componentes, Tipos…
Fundamentos de Programación
Algoritmo
Conjunto finito, no ambiguo de etapas expresadas en un cierto orden que para unas condiciones iniciales, permiten resolver el problema en un tiempo finito (Galve et al, 1993:3).
Corrección
Notación
Definido
Eficiencia
Preciso
Finito
Notaciones para algoritmo
Diagrama de flujo
Diagrama de N-S
Pseudocódigo
Estructura de computadoras (Arquitectura de Von Neuman)
Computador
Sistema electrónico capaz de ejecutar las instrucciones almacenadas en su memoria
Memoria (RAM)
Almacena datos, también instrucciones a ejecutar
Posee un conjunto de celdas llamadas "palabras de memoria"
Capaz de almacenar información utilizando ocho digitos binarios conocidos como byte
Número asociado a cada palabra de memoria se denomina "dirección de memoria"
Procesador CPU
Ejecuta los programas
Banco de registros: circuito electrónico capaz de almacenar un número, pueden almacenar cualquier valor
Registro PC (Program Counter): registro de propósito específico, almacena un dato para comprender el funcionamiento de un computador.
Unidad Aritmético-Lógica o ALU: circuito que realiza operaciones aritméticas y lógicas
Unidad de Control: circuito que gobierna el funcionamiento del procesador, indicando cuando hay que traer una instrucción de la memoria, cuando hay que ejecutar y cuando hay que guardar resultados
Registro IR: almacena la instrucción que está siendo ejecutada por el procesador
Ciclo de instrucción
El procesador trae una instrucción y la ejecuta y así sucesivamente, incluso cuando al computador no tiene ningún trabajo pendiente
Fase de búsqueda
Se trae de la memoria la siguiente instrucción que se va a ejecutar
Fase de ejecución
Se ocupa de ejecutar la instrucción
Dispositivos de entrada - salida
Suministra al computador los datos que debe procesar
Entrada: teclado, ratón, escáner, lectores de código de barras,micrófonos, webcams, etc.
Salida: impresora, monitor, altavoces, etc.
Almacenamiento
Dispositivos magnéticos: discos duros, estos almacenan la información imantando la superficie de un disco recubierto de ferrita.
Dispositivos ópticos: CD, DVD, almacenan la información haciendo incidir un láser sobre una superficie plástica.
Dispositivos de memoria Flash: tarjetas de memoria o memorias USB, utilizan semiconductores que permiten almacenar la memoria de manera permanente.
Programa
Conjunto ordenado de instrucciones que indica a la computadora las operaciones que debe llevar a cabo para realizar una tarea determinada.
Hardware
Parte física del sistema, como el conjunto de dispositivos, cables, transistores, etc.
Software
Parte lógica, es decir el conjunto de programas, la parte intangible.
Evolución y clasificación de los lenguajes
Lenguaje de Programación
Es una notación o conjunto de símbolos y caracteres combianados entre sí de acuerdo a una sintaxis ya definida que posibilita la trnasmisión de instrucciones a la CPU
Lenguajes de bajo nivel
Próximos a la arquitectura de la máquina
Lenguaje máquina
Único lenguaje inteligible directamente por un ordenador
Primer lenguaje de programación
Basado en símbolos 0 y 1, denominados bit (binary digit)
Cada procesador tiene su propio lenguaje máquina
Lenguaje ensamblador
Ejecución más rápida a comparación si se hubieran desarrollado en un lenguaje de alto nivel
Ocupan menos espacio de memoria
Facilitan el trabajo a la hora de desarrollar programas que controlen periféricos o dispositivos de E/S
Mayor velocidad de operación y que el código fuente sea ensamblado directamente a lenguaje máquina
No ser transportables
Ser lenguaje mas difícil de escribir y depurar
Lenguajes de alto nivel
Se encuentran más próximos al usuario o programador
Pascal, BASIC, COBOL, C
Traductores de Lenguaje
Encargados de traducir el lenguaje de alto nivel a código máquina y que las instrucciones sean entendidas y ejecutadas por la unidad central de proceso
Ensambladores
Traducen directamente los programas escritos en ensamblador a su equivalente en código máquina o código binario
Intérpretes
Programa de software encargado de procesar y traducir cada instrucción o sentencia de un programa escrito en un lenguaje de alto nivel a código máquina
Acepta un programa fuente que traduce y ejecuta simultáneamente analizando cada sentencia o instrucción por separado
Compiladores
Programa de software escrito en algún lenguaje de programación cuyo objetivo es traducir el correspondiente programa fuente a su equivalente en código maquina
Efectúa la operación en dos fases independientes, primero traduce completamente el programa fuente y seguidamente ejecuta el programa
Paradigmas de Programación
Colección de patrones conceptuales que moldean la forma de razonar sobre problemas, formular soluciones y de estructurar programas
Programación imperativa
Secuencia finita de instrucciones, que se ejecutan una tras otra
Pascal, Ada, Cobol, C, Modula-2 y Fortran
Programación Funcional
Todas las sentencias son funciones en el sentido matemático
LISP
Programación Lógica
Consiste en declarar una serie de hechos y reglas y luego preguntar por un resultado
Programación orientada a objetos
Puede ser un tanto imperativa como funcional y lógica, se caracteriza por la forma en manejar la información
Clase
Dato con determinadas propiedades y funcionalidad
Características
Objeto
Entidad de una determinada clase con un determinado estado
Herencia
Propiedad con la que es posible construir nuevas clases a partir de clases ya existentes
Ejemplos
Smalltalk, C++, Java
Generaciones de Lenguajes
Primera Generación
Lenguajes máquina y ensamblador
Segunda Generación
Fortran
Cobol
Algol
Basic
Tercera Generación
Propósito general
Pascal
C
Ada
Orientado a objetos
Smalltalk
Eiffel
C++
Java
Especializados
LISP
Prolog
Apl
Cuarta Generación
Sql
Concepto
características
Componentes
Tipos
Ejemplos
Concepto
Ejemplos
Ejemplos