Programación - Introducción

Anuncio
PROGRAMACIÓN
LENGUAJES DE PROGRAMACIÓN
Fundamentados en las notas anteriores, sabemos que software es muy
relacionado con el termino programa. Entonces, si es algo intangible, ¿como
hacemos para definirlo o escribirlo?. Para esto necesitamos un instrumento
(Lenguaje de Programación) que nos permita escribir tales programas.
Definición: Nos permiten escribir los programas de tal modo que la Computadora
interprete y/o ejecute las ordenes / instrucciones que el usuario desea.
Básicamente un Lenguaje de Programación es un Lenguaje Artificial que consta
de un conjunto de palabras y de reglas o axiomas (sintácticos y semánticos) que
permiten escribir programas para su posterior ejecución.
Tipos de Lenguajes de Programación.
Los podemos clasificar en tres tipos, que son:
1. Máquina: Cuyas ordenes están compuestas por ceros y unos (0’s y
1’s); su principal característica es su bajo nivel de interpretación por
parte del usuario. Es el lenguaje que interpreta de modo directo la
UCP y sus instrucciones están basadas en BITS. Este lenguaje no
requiere de traductor.
Ej.
0011010101111001
1111001100001010
-> Instrucción 1
-> Instrucción 2
2. Bajo Nivel: Ya que el lenguaje de máquina es de muy difícil
comprensión, los fabricantes de microprocesadores han definido
lenguajes ensambladores que traducen las ordenes dadas por el
usuario a ordenes que puedan ser ejecutadas por la máquina
(lenguaje de máquina). Estas están basadas en etiquetas nemónicas
o simplemente nemónicos.
Ej.
Mov A,1C
Add A,B
-> Instrucción 1
-> Instrucción 2
3. Alto Nivel: Estos lenguajes permiten escribir programas de una
manera semejante a como nos expresamos en lenguaje natural,
con la salvedad de que generalmente las instrucciones están
definidas en Ingles.
Ej.
printf(“hola”);
Writeln(‘Hola’);
System.out.print(‘Hola’);
-> Lenguaje C
-> Lenguaje Pascal
-> Lenguaje Java
NOTA:
Algunos Lenguajes de Programación permiten la programación en Alto y Bajo
nivel, como es el caso de Lenguaje C; a estos se les denominan Lenguajes de
Nivel Intermedio.
La idea principal de los Lenguajes de Programación es transformar las ordenes
que desea dar el usuario o programador en ordenes que entienda o pueda
ejecutar el Hardware. Tal proceso lo desempeñan programas Traductores.
Traductor.
Es el programa que transforma el programa o conjunto de instrucciones de Alto
Nivel a instrucciones (entendibles) de máquinas.(ver Fig. 1)
Alto Nivel
Traductor
Bajo Nivel
Figura 1 Traductor
Estos traductores, se clasifican en:
1. Compiladores: Revisa todas las instrucciones y hasta que el
programa no esté libre de errores o depurado no realiza la
ejecución del mismo.
Ej. Pascal, Lenguaje C.
2. Interpretes: A diferencia del caso anterior, revisa y ejecuta
instrucción por instrucción, de tal modo que puede presentar
anomalías antes de finalizar la tarea.
Ej. Algunas versiones de Basic.
PROGRAMA
Definición: Es un Conjunto ordenado y finito de ordenes o instrucciones que se
escriben en lenguajes de programación para ejecutar y lograr una tarea o fin
específico.
NOTA:
En pocas palabras un programa es como una receta de cocina que requiere de
ingredientes (datos) y de una serie de pasos (instrucciones) para lograr así un
deseado platillo o postre.
Fases para la creación de un programa
En la creación o desarrollo de un programa (aunque es un proceso creativo) se
recomienda seguir las siguientes fases:
1.
2.
3.
4.
5.
6.
7.
Análisis.
Diseño.
Codificación.
Compilación.
Depuración.
Verificación.
Documentación
1.Análisis ¿Qué?
En esta etapa, el programador tiene una apreciación general del problema (a
programar) y debe determinar: Entradas, Procesos y Salidas involucradas en el
mismo. Luego de culminada esta etapa el programador debe tener una clara visión
de la solución programada del problema.



Entradas: Es el conjunto de datos (generalmente introducidos por el
usuario) que accionan la ejecución o procesamiento de un programa.
Procesos: Operaciones que basadas en las entradas generan las
salidas.
Salidas: Es el conjunto de datos que resulta del la ejecución del
programa aunado a los datos de entrada.
Ejemplo: Transformación de pulgadas a cm.
Entradas: (en cada fila se define cada variable de entrada)
Nombre
Tipo de dato
descripción
pulg
entero
Nro. De Pulgadas
restrcción
ninguna
Proceso: (Se describen brevemente los procesos u operaciones involucradas)
Cm<-2.54*pulg
Salidas: (en cada fila se define cada variable de salida)
Nombre
Tipo de dato
descripción
cm
real
Nro. De centimetros
restrcción
Ninguna
2. Diseño ¿Cómo?
Esta fase se caracteriza por describir a través de técnicas y/o métodos la solución
programada del problema. Por lo general, en esta etapa se propone una solución
tipo modular de diseño descendiente (Top Down) en el que un gran problema se
divide en pequeños sub-problemas, que son controlados por un programa o
módulo principal. Este diseño se realiza con algoritmos. (un algoritmo para cada
módulo si existen y uno para en principal)
Algoritmo: Es un método (aunque no el único) que permite diseñar la
solución programada de un problema, como una serie finita y ordenada de
pasos bien definidos. Este debe ser:
 Definido -> Si se sigue 2 veces debe ser igual.
 Finito
-> Termina o tiene fin.
 Preciso -> Cada orden o instrucción debe ser clara.
TÉCNICAS y/o HERRAMIENTAS DE DISEÑO (Algoritmos)
Para el diseño de programas, por lo general se emplean dos técnicas algorítmicas,
que son:
 Flujogramas.
 Pseudocódigo.
Flujogramas: Es una técnica o representación gráfica del algoritmo, en la que las
operaciones, instrucciones y el orden de ejecución, tienen asociados figuras
generalmente geométricas (estandarizada por ANSI) y entre las más utilizadas se
tienen:
Descargar