Fundamentos de Programación: Conceptos, Lenguajes y Herramientas Esenciales
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 7,08 KB
Conceptos Fundamentales de Programación
- Programación
- Acción de programar.
- Programar
- Ordenar acciones para realizar un proyecto.
- Lenguaje de Programación
- Lenguaje formal que proporciona la capacidad de escribir instrucciones o secuencias de órdenes para controlar el comportamiento de un PC.
- Programa
- Órdenes escritas mediante un lenguaje de programación.
- Software de Programación
- Programas utilizados para crear, depurar y mantener otros programas o aplicaciones.
La Instrucción y sus Componentes
Una Instrucción es un conjunto de datos insertados en una secuencia específica que el procesador interpreta y ejecuta.
- Código de Operación: Indica al procesador qué operación debe realizar.
- Operando: Indica los datos necesarios para realizar las operaciones, o las direcciones de memoria donde se encuentran dichos datos.
Tipos de Operaciones
- Lógicas
- Operaciones lógicas.
- Aritméticas
- Operaciones aritméticas.
- Ruptura de Secuencia
- Salto condicional o incondicional.
- Transferencia de Datos (E/S)
- Transferencia de información entre dispositivos del sistema (Entrada/Salida).
- Control
- Controla el desarrollo del programa.
Clasificación de Lenguajes de Programación
Lenguajes de Bajo Nivel
Se ejecutan directamente en el microprocesador. Están formados por palabras binarias. Sus características principales son:
- Programas no intercambiables entre sistemas microprogramables.
- Velocidad de ejecución alta.
Lenguaje Ensamblador
Las instrucciones están representadas mediante nemónicos (etiqueta/nemónico/operando), lo que facilita su escritura y lectura.
- Ensamblaje: Proceso de traducción del lenguaje ensamblador a lenguaje máquina.
- Ensamblador: Programa que realiza dicha traducción.
Lenguajes de Alto Nivel
Son lenguajes más evolucionados y cercanos al usuario. Son independientes de la máquina, es decir, no dependen de las instrucciones específicas del microprocesador.
El Proceso de Programación y Traducción
El proceso comienza al escribir el programa (Código Fuente), el cual debe transformarse a Código Máquina, entendible por el sistema microprogramable.
Herramientas de Traducción
- Ensambladores: Transforman el lenguaje ensamblador a lenguaje máquina.
- Compiladores: Transforman el resto de lenguajes (alto nivel) a lenguaje máquina.
Métodos de Ejecución
- Compilador y Ensamblador
- Leen dos veces el programa, generan el código máquina y lo ejecutan.
- Intérprete
- Lee una línea, la convierte a código máquina y la ejecuta inmediatamente. Es un proceso más lento.
- Enlazador (Linkador)
- Enlaza el código generado con librerías externas necesarias para la ejecución.
Metodologías de Desarrollo
Programación Estructurada
Conjunto de técnicas que incluyen el diseño descendente, la descomposición de acciones complejas en simples, y el uso de estructuras básicas de control:
- Secuenciales
- Selectivas
- Repetitivas
Programación Modular
Consiste en la división del programa en módulos o tareas. Los módulos deben ser independientes entre sí.
Ventajas de la Programación Modular y Estructurada
Los programas resultan más fáciles, sencillos y rápidos de desarrollar. Facilita el debugging (seguimiento y corrección de fallos).
Algoritmos y Representación
Un Algoritmo es un conjunto de operaciones ordenadas para hallar la solución de un problema. Son independientes del lenguaje de programación y se representan mediante fórmulas, diagramas de flujo y pseudocódigo.
Fases del Algoritmo
- Entrada: Instrucciones que toman datos de un dispositivo periférico externo.
- Proceso: Instrucciones encargadas de procesar la información.
- Salida de Datos: Instrucciones que envían los resultados del proceso a un dispositivo.
El Programa es la expresión de un algoritmo en un lenguaje de programación.
Herramientas de Representación Gráfica
Diagrama de Flujo
Símbolos estandarizados unidos por flechas que muestran la secuencia lógica de operaciones o acciones.
- Organigrama: Representación gráfica del flujo de datos e información entre soportes físicos de un programa (típico de la fase de análisis).
- Ordinograma: Representación gráfica de la secuencia lógica y detallada de las operaciones a realizar en la ejecución del programa.
Pseudocódigo
Método para escribir la solución de un problema empleando un lenguaje intermedio entre el lenguaje natural y el lenguaje de programación. Es una descripción de un algoritmo independiente del lenguaje de programación. No es un lenguaje real, sino una estructura de lenguaje de programación diseñada para ser leída por personas.
Entornos y Herramientas de Desarrollo (Lenguajes de Alto Nivel)
- Editor de Texto
- Tras seleccionar el lenguaje de programación, permite escribir el programa y generar el código fuente.
- Compilador
- Traduce el código fuente a código máquina, generando el programa objeto (
.OBJ). - Enlazador (Linker)
- Enlaza el programa objeto a librerías externas, generando el programa ejecutable (
.exe). - Depurador (Debugger)
- Herramienta que permite encontrar y corregir fallos (bugs).
- Entorno de Desarrollo Integrado (IDE)
- Un software que agrupa el editor de texto, compilador, enlazador, depurador, etc. Suelen incluir funcionalidades avanzadas como el autocompletado inteligente de código (IntelliSense).
Caso de Estudio: El Lenguaje C
El Lenguaje C es un lenguaje de programación procedimental, desarrollado por Dennis Ritchie entre 1969 y 1972. Sus características principales son:
- No está ligado a un software o sistema operativo específico.
- Es sencillo y ejecutable en cualquier máquina que pueda compilar C.
- Es la base de muchos lenguajes de programación modernos.