El documento describe los conceptos fundamentales de los lenguajes de programación, incluyendo las definiciones de lenguajes de bajo, medio y alto nivel, y los programas traductores como compiladores y ensambladores. También cubre técnicas de programación como diagramas de flujo y las fases para resolver problemas de programación.
infografia del sena para analisis y desarrollo de software
Universidad de panamá kathia j
1. Universidad de Panamá
centro regional de bocas del toro
Facultad: informática electrónica y comunicación
Carrera:lic.Informática aplicada a la ens.Imp.Tecnología
Asignatura: fundamento de informática
Tema: lenguaje de programación
definición
Niveles de lenguaje
programas traductores,copiladores,de maquina,
ensambladores
técnicas de programación símbolos y reglas del diagrama de flujo
fase en la resolución de problemas de programación
Profesora: Arienis Vargas
Elaborado por: Jiménez Katia
2. Lenguaje de
programación
Creado entre 1972 por Brian Kernighan y
Dennis Ritchie para escribir el código del
sistema operativo UNIX.
A mediados de los ochenta se crea el C++,
extensión de C orientada a objetos.
Con la popularidad de las microcomputadoras
muchas compañías comenzaron implementar su
propio C por lo cual surgieron discrepancias
entre sí.
3. Definición
según la definición teórica, como lenguaje se entiende a
un sistema de comunicación que posee una determinada
estructura, contenido y uso. La programación es, en el
vocabulario propio de la informática, el procedimiento de
escritura del código fuente de un software.
En 1978 se editó la primera publicación de C por
Kernighan y Ritchie. Con la popularidad de las
microcomputadoras se crearon muchas
implementaciones de C y aparecieron discrepancias. Del
verano de 1983 para crear un estándar que definiera de
una vez por todas el lenguaje, y éste sea prueba en
1988.
4.
5. Niveles de lenguajes
• Los lenguajes de programación se clasifican por su nivel de abstracción del procesador, en
este caso la abstracción es un principio por el cual se aísla toda aquella información que no
es resulta relevante a un determinado nivel de conocimiento. Lenguajes de bajo nivel:
cercanos a la arquitectura de la máquina.
• Â Lenguajes de alto nivel: cercanos a la forma de pensar del programador.
• Â Lenguaje máquina: el único que la circuitería de la máquina es capaz de interpretar. •Sus
instrucciones se encuentran codificadas en binario.
• Â Lenguajes simbólicos: no son directamente interpretables por la circuitería de la máquina.
•Se codifican mediante símbolos alfanuméricos, de puntuación, paréntesis, separadores,
etc.
6. Lenguaje de bajo nivel
es el que proporciona poca o ninguna
abstracción del microprocesador de un
ordenador. Consecuentemente es fácilmente
trasladado a lenguaje de máquina.
Ventajas:
Mayor adaptación al equipo.
Posibilidad de obtener la máxima velocidad
con mínimo uso de memoria.
Inconvenientes:
Imposibilidad de escribir código
independiente de la máquina.
Mayor dificultad en la programación y en la
comprensión de los programas.
Características:
Se trabaja a nivel de instrucciones, es decir,
su programación es al más fino detalle.
Está orientado a la máquina.
7. Lenguaje de medio nivel
Lenguaje de medio nivel es un lenguaje
de programación informática como el
lenguaje C, que se encuentran entre los
lenguajes de alto nivel y los lenguajes
de bajo nivel. Como lenguaje de nivel
medio permite la manipulación de bits,
bytes y direcciones, esto lo hace
particularmente adecuado para la
programación de sistemas.
8. Los lenguajes de alto
nivel
se caracterizan por expresar los algoritmos
de una manera adecuada a la capacidad
cognitiva humana, en lugar de a la capacidad
ejecutora de las máquinas.
En los primeros lenguajes de alto nivel la
limitación era que se orientaban a un área
específica y sus instrucciones requerían de
una sintaxis predefinida. Se clasifican como
lenguajes procedimentales.
9.
10. Programas
Traductor es un programa que procesa
texto fuente y genera un texto objeto.
El traductor esta escrito en un lenguaje
de implementación(Ll) o también
denominado el lenguaje host. El texto
fuente esta escrito en lenguaje
fuente(LF).
La complejidad de los programas que
se desarrollan actualmente produce la
necesidad de iniciar a los alumnos en
un camino que los conduzca a utilizar
efectivas técnicas de programación. Es
importante para ello poner énfasis en
el diseño previo.
Traductores
11. Compiladores
Compiladores de maquinas: un
traductor que transforma texto
fuente de lenguaje alto nivel a
lenguaje de bajo nivel se le
denomina compiladores. El tiempo
que se necesita para traducir un
lenguaje de alto nivel a lenguaje
objeto se denominad tiempo de
compilación tiempo que tarda en
ejecutarse un programa objeto se
denomina tiempo de ejecución .
12. Ensambladores
Ensambladores: los ensambladores
son traductores sencillo, en los que
el lenguaje fuente tiene una
estructura simple que permite una
traducción de una sentencia fuente a
una instrucción en lenguaje
maquina, guardándose casi en todos
los caso esta relación uno a uno.
Hay ensambladores que tienen
macroinstrucciones en su lenguaje.
13. Técnicas de programación
• Las técnicas de programación tratan de ordenar las actividades de forma que se puedan identificar
las relaciones temporales lógicas entre ellas, determinando el calendario o los instante de tiempo
en que debe realizarse cada una. La programación debe ser coherente con los objetivos
perseguidos y respetar las restricciones existentes.
• Pasos: construir un diagrama de tiempos, establecer los tiempos de cada actividad
• Analizar los costos del proyecto y ajustar las holguras.
• Disponer de un diagrama de tiempos
• Conocer actividades criticas y determinar la necesidad de recursos.
• Diagramas de Gantt
• Curvas de producción acumulada
• Método de la ruta critica
• Diagrama de precedencia.
14. Símbolos y reglas del diagrama de flujo
• Los diagramas de flujo se dibuja
generalmente usando algunos símbolos
estándares; sin embargo algunos
símbolos especiales pueden también ser
desarrollados cuando sean requeridos.
• Los diagramas de flujo deben escribirse
de arriba hacia abajo y/o de izquierda a
derecha
• Los símbolos se unen con líneas, las
cuales tienen en la punta una flecha que
indica la dirección que fluye la
información procesos, se deben de
utilizar solamente líneas de flujo
horizontal o verticales.
• Se deben evitar el cruce de líneas para lo
cual se quisiera separar el flujo del
diagrama a un sitio distinto.
15. Fases en la resolución de problemas de
programación
Cuando nos proponemos resolver problemas en programación siempre pasamos
directamente al computador y empezamos a escribir código sin antes haber analizado en lo
más mínimo el problema, o bueno lo vamos analizando y directamente vamos escribiendo
el código y pues en algunos casos esta práctica funciona, claro está, cuando los problemas
son sencillos o cuando eres un programador experimentado, no así con problemas más
complejos y más aún cuando estas empezando a programar.
1. ANÁLISIS PREVIO DEL PROBLEMA
En esta etapa se debe definir y tener claro lo que el
programa tiene que hacer junto con las tareas que debe
realizar para llevar a cabo la solución, qué datos necesito
para realizar la tareas
16. 2. DISEÑO DEL ALGORITMO
Una vez que tenemos claro el problema, después de
haber definido todas la entradas y salidas que va
tener el programa, también las tareas a realizar, es
hora de diseñar el algoritmo y que irá de acuerdo a
todas las especificaciones la computadora.
3. CONFIGURACIÓN DEL ENTORNO DE
DESARROLLO Y CODIFICACIÓN
Esta etapa consiste en transcribir o adaptar el algoritmo a un
lenguaje de programación, se tendrá que adaptar todos los
pasos diseñados en el algoritmo con sentencias y sintaxis
propias del lenguaje.
4. COMPILACIÓN Y PRUEBAS
La fase de compilación permitirá detectar errores en
tiempo de compilación, ejecución y lógicos, y en el caso
de Java se generará uno o varios archivos bytecode que
serán ejecutados por la computadora.