Download File - CREA, PROGRAMA Y DIVIÉRTETE

Document related concepts
Transcript
[TEMA#1. CONCEPTOS BÁSICOS DE PROGRAMACIÓN] 10º
Objetivo didáctico: Describe los conceptos esenciales sobre sistemas, los tipos de lenguajes,
traductores y programas.
Una computadora es una herramienta para resolver problemas. Una
computadora es una máquina inútil si no ejecuta instrucciones que le
indiquen qué tarea debe hacer. Para aprender más de la programación de
computadoras desarrollaremos los conceptos básicos.
 CONCEPTOS DE PROGRAMACIÓN
 Programación de computadoras: es el proceso de diseñar,
codificar, depurar y
mantener
el código
fuente de programas
computacionales. El código fuente es escrito en un lenguaje de
programación. El propósito de la programación es crear programas que
exhiban un comportamiento deseado. El proceso de escribir código
requiere frecuentemente conocimientos en varias áreas distintas, además
del dominio del lenguaje a utilizar, algoritmos especializados y lógica
formal.
 Sistema: Es un conjunto de partes o elementos organizadas y relacionadas que interactúan entre sí
para lograr un objetivo. Los sistemas reciben (entrada) datos, energía o materia del ambiente y
proveen (salida) información.
 Datos: son los hechos que describen sucesos y entidades. ”Datos” es una palabra en plural que se
refiere a más de un hecho. Los datos son comunicados por varios tipos de símbolos tales como las
letras del alfabeto, números, movimientos de labios, puntos y rayas, señales con la mano, dibujos, etc.
Estos símbolos se pueden ordenar y reordenar de forma utilizable y se les denomina información.
 Información: Es una colección de hechos significativos y pertinentes, para el organismo u
organización que los percibe. La definición de información es la siguiente: Información es un
conjunto de datos significativos y pertinentes que describan sucesos o entidades.
 Lenguaje de programación: Sistema de símbolos y reglas que permite la construcción de
programas con los que la computadora puede operar así como resolver problemas de manera eficaz.
Estos contienen un conjunto de instrucciones que nos permiten realizar operaciones de entrada /
salida, cálculo, manipulación de textos, lógica / comparación y almacenamiento / recuperación.
 CLASIFICACIÓN DE LOS LENGUAJES DE
PROGRAMACIÓN:
 Lenguaje Máquina: Son aquellos cuyas
instrucciones son directamente entendibles por la
computadora y no necesitan traducción posterior
para que la CPU pueda comprender y ejecutar el
programa. Las instrucciones en lenguaje maquina
se expresan en términos de la unidad de memoria
más pequeña el bit (dígito binario 0 ó 1).
JARC-PROGRAMACIÓN DE COMPUTADORAS-10°
Página 1
[TEMA#1. CONCEPTOS BÁSICOS DE PROGRAMACIÓN] 10º
Este lenguaje es mucho más rápido que los lenguajes de alto nivel.
La desventaja es que son bastantes difíciles de manejar y usar, además de tener códigos fuente
enormes donde encontrar un fallo es casi imposible.
 Lenguaje de Bajo Nivel (Ensamblador): En este lenguaje las instrucciones se escriben en códigos
alfabéticos conocidos como mnemotécnicos para las operaciones y direcciones simbólicas.
El lenguaje ensamblador es un derivado del lenguaje máquina y está formado por abreviaturas de
letras y números llamadas mnemotécnicos. Con la aparición de este lenguaje se crearon los
programas traductores para poder pasar los programas escritos en lenguaje ensamblador a lenguaje
máquina. Como ventaja con respecto al código máquina es que los códigos fuentes eran más cortos
y los programas creados ocupaban menos memoria. Las desventajas de este lenguaje siguen siendo
prácticamente las mismas que las del lenguaje ensamblador, añadiendo la dificultad de tener que
aprender un nuevo lenguaje difícil de probar y mantener.
 Lenguaje de Alto Nivel: Los lenguajes de programación
de alto nivel son aquellos en los que las instrucciones o
sentencias a la computadora son escritas con palabras
similares a los lenguajes humanos (en general en inglés),
lo que facilita la escritura y comprensión del programa.
Estos lenguajes permiten al programador olvidarse por
completo del funcionamiento interno de la maquina/s
para la que están diseñando el programa. Tan solo
necesitan un traductor que entiendan el código fuente
como las características de la máquina.
Suelen usar tipos de datos para la programación y hay
lenguajes de propósito general (cualquier tipo de
aplicación) y de propósito específico (como FORTRAN,
BASIC, PASCAL, COBOL, FORTRAN, para trabajos
científicos).
 Lenguajes de cuarta generación o bien 4GL: son herramientas encargadas de optimizar el desarrollo
de software automatizando la creación de este. Se han utilizado principalmente en la generación de
código para GUI y además en la implementación de programas que facilitan las tareas de los
desarrolladores y clientes. La base de los 4GL es que el usuario no dice como se harán las cosas, solo
brinda parámetros y el programa se encargará de generar lo solicitado por el usuario, sea esto desde
generación de reportes de bases de datos a solucionar un problema matemático.
(SheerPower4GL, PowerBuilder, WinDev, Focus, Natural, Progress4GL, SQL, Oracle Reports,
PostScript, Matemática, MatLab, Ramis, entre otros.)
 Lenguajes Naturales: Es un lenguaje escrito o hablado usado por una comunidad, que es precisamente
lo contrario a un lenguaje para establecer comunicación con una computadora, mediante la entrada de
datos, o la programación de su funcionamiento. (Guzmán 1997)
JARC-PROGRAMACIÓN DE COMPUTADORAS-10°
Página 2
[TEMA#1. CONCEPTOS BÁSICOS DE PROGRAMACIÓN] 10º
 TRADUCTORES DE LENGUAJE.
Un traductor es un programa que recibe como entrada código escrito en un cierto lenguaje y produce
como salida código en otro lenguaje. Generalmente el lenguaje de entrada es de más alto nivel que el
de salida. Ejemplos de traductores son los ensambladores y los compiladores.
Tipos de errores de traducción:
 Errores de Compilación: errores de léxico y sintaxis
 Errores de Ejecución: errores semánticos, de lógica o de intérprete

Compilador: Es un programa informático que traduce un programa escrito en un lenguaje
de programación a otro lenguaje de programación, o también genera aplicaciones que
sean directamente utilizables en un ordenador o computadora. Un compilador lee el código
fuente creado en un determinado lenguaje de programación, lo interpreta, comprueba su
sintaxis y traduce a lenguaje o código máquina toda la serie de instrucciones, generando el
archivo ejecutable final (programa compilado).
La ejecución de un programa con compilador requiere de dos etapas:
1) Traducir el programa simbólico a código máquina
2) Ejecución y procesamiento de los datos.

Ensamblador: Es un programa que traduce de un
lenguaje ensamblador a lenguaje máquina, mientras
que un compilador es un programa que traduce de un
lenguaje de alto nivel a un lenguaje de bajo nivel o a
lenguaje máquina.

Intérpretes: Es un programa que traduce un lenguaje
de alto nivel al lenguaje de máquina de una
computadora. El programa siempre permanece en su
forma original (programa fuente) y traduce cuando está
en la fase de ejecución instrucción por instrucción
Un intérprete:
 Traduce y ejecuta una línea del programa a la
vez.
 Si hay error, detiene ejecución del programa.
 Programas más lentos pero más portables y
flexibles.
 PROGRAMA.
Un programa es una serie de instrucciones que le dice al equipo de computadora las tareas que debe
realizar. La computadora realiza, o ejecuta, las instrucciones de un programa colocándolas primero en la
memoria de la computadora.
Los programas se clasifican en:
 Programa fuente: Programa escrito en un lenguaje de alto nivel (texto ordinario que contiene
las sentencias del programa en un lenguaje de programación). Necesita ser traducido a código
máquina para poder ser ejecutado.
JARC-PROGRAMACIÓN DE COMPUTADORAS-10°
Página 3
[TEMA#1. CONCEPTOS BÁSICOS DE PROGRAMACIÓN] 10º


Programa (o código) objeto: Es el programa fuente traducido (por el compilador) a código
máquina..
Programa Ejecutable: Traducción completa a código máquina, realizada por el enlazador, del
programa fuente y que ya es directamente ejecutable.
Actividad de aprendizaje N°1. Individual
Elabora individualmente en el cuaderno un mapa conceptual, donde
refleje las características de los conceptos fundamentales y los
lenguajes de programación.
Actividad de aprendizaje Grupal.
 Investiga en Internet u otra fuente bibliográfica sobre las
características, clasificación, ventajas y desventajas de los
lenguajes de programación.
 Presenta un informe escrito que contenga: Página de presentación,
Índice, Introducción, contenido (8-10 páginas), conclusiones,
bibliografía.
 Deberás realizar una exposición oral de 7 a 10 minutos por grupo.
 Criterios a Evaluar:
 Informe escrito: Puntualidad (4), Creatividad (3), Seguimiento de indicaciones (4),
Hoja de presentación del informe escrito (2), Índice (2), Introducción (4), Contenido
(8), conclusiones (4), bibliografía (4). 35 puntos
 Exposición Oral: Dominio del tema (3), Claridad en las ideas y opiniones (3), uso
adecuado del tiempo (2), organización grupal (2), uso de recurso didáctico (3),
respuestas a las preguntas (2). 15 puntos
Actividad de aprendizaje N°2. Individual
Diseña individualmente en el cuaderno un mapa conceptual, sobre
traductores de lenguaje y diferentes programas de computadoras.
JARC-PROGRAMACIÓN DE COMPUTADORAS-10°
Página 4