Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Contenido
LENGUAJESDEPROGRAMACION
A.Definicin
B.PropsitosdelosLenguajes
C.CaractersticasdelosLenguajes
D.NivelesdelosLenguajesdeProgramacin
E.DesventajasdelosLenguajesdeAltoNivel.
F.ClasificacinsegnsuAplicacin
Lenguajes de Programacin
Definicin
Un LENGUAJE DE PROGRAMACION
consiste en una serie
especfica de
caracteres que permiten dar instrucciones a
un computador, con la finalidad de lograr que
ella realice ciertas acciones en la solucin de
algn problema computarizado. Cada lenguaje
tiene caractersticas propias en cuanto a su
GRAMATICA Y su SINTAXIS
3
Lenguajes de Programacin
PropsitodelosLenguajes
1.Naturales
Los lenguajes naturales o bien conocidos
como lenguajes humanos no son ms que un
medio para lograr
la comunicacin de
pensamientos
Lenguajes de Programacin
PropsitodelosLenguajes
2.Lenguajes de Programacin
Su propsito es ms restringido,
son
limitados por la capacidad del hardware y del
software. Se orientan ms hacia el mandato
de acciones a ejecutar por el computador
Lenguajes de Programacin
CaractersticasdelosLenguajesdeProg
1.Naturales
Permite la transmisin de muchos pensamientos a
diferentes niveles y con diferentes significados.Una
descripcin de un pensamiento puede ser
impersonal y objetiva o emocional y subjetiva
Puede utilizarse la prosa y la poesa o la
descripcin formal, tcnica, humorstica, etc.
6
Lenguajes de Programacin
CaractersticasdelosLenguajesdeProg
2.Lenguajes de Programacin
No se requiere que comuniquen una gran
variedad de pensamientos, es suficiente que
permitan la transmisin de solo cuatro
pensamientos
bsicos
(cuatro
tipo
de
operaciones)
Es imprescindible que la comunicacin sea
precisa y clara, es decir, no debe admitir
ambigedades
7
Lenguajes de Programacin
Clasificacin
Esposibleclasificarloslenguajesde
programacinsiguiendodiferentescriterios.
Seconsiderarntres:
NiveldeAbstraccin
Finalidaddellenguaje
Caractersticasdellenguaje
Lenguajes de Programacin
Clasificacin
SegnelNiveldeabstraccin:
Lenguajesdebajonivel:
Cercanosalamquina
Bajoniveldeabstraccin
LenguajeMquina
Ensamblador
.Lenguajesdealtonivel:
. Cercanosalproblema
. Altoniveldeabstraccin
9
Lenguajes de Programacin
Clasificacin
Segnlafinalidad,existenlenguajes:
.Cientficos:ALGOL,FORTRAN,...
.Ingenieriles:ADA,DYNAMO,...
.deGestin:COBOL,dBASE,...
.deInteligenciaArtificial:LISP,
PROLOG,...
.Multipropsito:PASCAL,MODULA2,
C,...
10
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
Los lenguajes de programacin se pueden
clasificar segn su cercana o similitud al
lenguaje mquina o lenguaje binario, a esto se
le conoce como nivel del lenguaje. Mientras ms
parecido sea el lenguaje al lenguaje mquina o
binario su nivel ser menor y contrapuesto se
tendr los lenguajes de alto nivel que se
asemejan a los lenguajes naturales
11
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
LenguajeNatural
Alto Nivel
LenguajeMquina
BajoNivel
12
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
1. Bajo Nivel
Este nivel corresponde al lenguaje de
programacin
ASSEMBLER
o
lenguaje
Ensamblador que est asociado a un respectivo
lenguaje mquina. El lenguaje ensamblador es
simplemente una representacin simblica del
lenguaje mquina asociado, lo cual permite una
programacin menos tediosa que con el lenguaje
mquina correspondiente
13
14
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
1.Bajo Nivel
15
R1, operando1
R1 o R0 , operando2
R1, resultado
<OP> ----> A| R | M | D
Memoria
Load
Store
R0
R1
16
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
2. Alto Nivel
Son los lenguajes de programacin ms
modernos, presentan una gran facilidad para el
programador en cuanto a la facilidad de realizar
programas
debido
a
que
poseen
MACROINSTRUCCIONES.
Una MACROINSTRUCCION es una instruccin escrita
en un lenguaje de diferente al mquina que mediante
traduccin es convertida en otro grupo de instrucciones,
en lenguaje mquina
17
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
2. Alto Nivel
Los lenguajes de alto nivel pueden ser divididos
en distintos grupo, siendo ellos los siguiente:
Lenguajes de Alto Nivel de 4ta. Generacin o
Lenguajes Declarativos.
Lenguajes de Alto Nivel de 3era. Generacin.
Lenguajes de Alto Nivel Especiales o de Mediano
Nivel.
18
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
LenguajeNatural
AltoNivel
LenguajeMquina
BajoNivel
19
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
LenguajeNatural
Declarativos
3era. Generacin
ediano Nivel
LenguajeMquina
BajoNivel
20
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
22
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
2.3. Lenguajes de Mediano Nivel
Estos lenguajes presentan caractersticas
iguales a los lenguajes de alto nivel de 3era
generacin, pero incluyen una caracterstica
especial que los a ayudado a tener una gran
importancia en la actualidad como es la de
permitir el acceso a la arquitectura de la
mquina con un potencial similar al de los
lenguajes de bajo nivel, pero con la facilidad de
los de alto nivel.
25
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
2.3. Lenguajes de Mediano Nivel
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
(compilacin).
No se aprovechan las posibles ventajas
de la arquitectura interna de la mquina
(caso especial los de mediano nivel).
27
Lenguajes de Programacin
NivelesdelosLenguajesdeProgramacin
Desventajas de los Lenguajes De Alto Nivel
Se incrementa la ocupacin de memoria
interna.
El tiempo de ejecucin es mayor puesto que
las instrucciones generadas por el compilador
son ms numerosas que las correspondientes al
mismo programa escrito directamente en
ASSEMBLER o lenguaje mquina.
28
Lenguajes de Programacin
ClasificacinsegnsuAplicacin
Segn sea la utilizacin u orientacin que
posean la mayora de las
aplicaciones
elaboradas, los lenguajes de programacin se
pueden clasificar de la siguiente manera:
Cientfico (FORTRAN, C)
Procesamiento de Datos (PL/1, Cobol, Leng. Xbase)
Procesamiento de Texto (snobol, XML)
Inteligencia Artificial (LISP, PROLOG)
Programacin de Sistemas (C, ADA,MODULA)
29
Lenguajes de Programacin
ClasificacinsegnsuAplicacin
a.Cientfico
Son lenguajes que permiten las solucin de
problemas donde existe una alta manipulacin de
nmeros y arreglos de nmeros usando principios
matemticos y estadsticos. Usualmente la cantidad
de
datos en tales problemas es relativamente
pequea y su estructura es relativamente simple.
Frecuentemente los problemas cientficos requieren
de alto procesamiento y bajo proceso de E/S
30
Lenguajes de Programacin
ClasificacinsegnsuAplicacin
b. Procesamiento de Datos
Son lenguajes con el propsito de permitirle al
programador elaborar programas donde el fin
principal es el de crear, mantener y extraer datos
contenidos en registros y archivos. El volumen de
datos que se manipula es generalmente grande,
pero por lo contrario la realizacin de procesos
aritmticos es baja, incrementndose el nmero de
procesos de E/S. Por lo general los procesos son de
tipo BATCH en vez de iterativo
31
Lenguajes de Programacin
ClasificacinsegnsuAplicacin
c. Procesamiento de Texto
Su principal caracterstica es la de procesar
texto en lenguaje natural. El texto procesado no
tiene ninguna restriccin en cuanto al lenguaje
de programacin utilizado para el desarrollo de
aplicaciones de textos.
32
Lenguajes de Programacin
ClasificacinsegnsuAplicacin
d.Inteligencia Artificial
La condicin principal de estos lenguajes es la
de permitir la implementacin de aplicaciones
que simulan un comportamiento inteligente.
Estos lenguajes son muy utilizados en
aplicaciones como juegos de ajedrez, programas
de compresin del lenguaje natural, robtica y
sistemas expertos.
33
Lenguajes de Programacin
ClasificacinsegnsuAplicacin
e.Programacin de Sistemas
Son lenguajes de programacin que permiten
el desarrollo de programas que hacen interfaz
entre
la
computadora
(hardware),
el
programador y/o el operador. Dentro de las
aplicaciones comnmente desarrolladas en
estos
lenguajes
tenemos:
Compiladores,
Ensambladores, Traductores, Rutinas de E/S,
Facilidades de Gestin, Sistemas
Operativos,
etc.
34
Lenguajes de Programacin
ClasificacinsegnsuAplicacin
e.Programacin de Sistemas
Dos de las caractersticas que poseen
las aplicaciones que se pueden desarrollar
con estos lenguajes son: la necesidad de
tratar con sucesos impredecibles o
excepcionales y la necesidad de coordinar
actividades de varios programas o tareas
ejecutndose asincronamente.
35
Lenguajes de Programacin
ADA
Basic,Visual
Beta
C,C++,VisualC
Java
Cecil:Cecilisanew
purelyobjectoriented
languageintendedto
supportrapidconstruction
ofhighquality,extensible
software
COBOL:COmercial
BuisnessOrientedLanguage
Eclipse:
combines Sepia's
extended Prolog technology with
MegaLog's persistent knowledge
base functionality, a substantial
subset of CHIP's constraints
handling facilities, several new
constraints libraries, and soon orparallelism as featured in ElipSys.
36
Lenguajes de Programacin
Eiffelisanadvanced
objectorientedprogramming
languagethatemphasizesthe
designandconstructionof
highqualityandreusable
software.
Elfisaconstraintlogic
programminglanguagebased
ontheLFLogical
Framework.Itisintendedas
auniformmetalanguagefor
specifying,implementing,
andprovingpropertiesof
programminglanguagesand
logics
Oz is a concurrent constraint
programming language
37
Lenguajes de Programacin
PerlApowerfulscripting
andstringmanipulation
language.
Postscript.Internet
PostScriptResources
Prolog:TheLogic
Sisal: A high-performance
functional language with implicit
parallelism for scientific
programming
.
.
ProgrammingLanguage
Pythonisanobject
orientedscriptingand
prototypinglanguagewhich
somepreferoverPerl,TCL
orScheme
38
Lenguajes de Programacin
39
Lenguajes de Programacin
40
Lenguajes de Programacin
41
Lenguajes de Programacin
42
Lenguajes de Programacin
43
Lenguajes de Programacin
44
45
Lenguajes de Programacin
46
47
Lenguajes de Programacin
48
Lenguajes de Programacin
49
50
Lenguajes de Programacin
Lenguajes de alto nivel Lenguajes imperativos
1. FORTRAN
|
COBOL
ALGOL 60
--------|
--------|----------------------------------------------------------------|
|
|
||
|
|
|
IC
ALGOL 68
Pascal
PL/I
|
SIMULA
BCPL
---------------------------|--------|--------|------------|
|---|-----|------|---|
|
|
|
|
|
CLU |
Modula
|
|
|
Smalltalk 72
|
C
|
|
|
|
-----|------------|---|--------Ada
|
|
|
| Smalltalk 80
|---|--------|
Object Pascal
|
|
|
|----------------|
|
|
|Eiffel Smalltalk V
Objective C
C++
|--------|----------------------------------|
|
|
OOPL/I
OOCOBOL
51
Lenguajes de Programacin
Lenguajes aplicativos o
funcionales
2. LISP
--------------------------|
|
|
|
LOOPS Plasma INTERLISP Scheme
52
Lenguajes de Programacin
Actividad Grupal
Por equipo, conciba un
computador simple hipottico,
Conciba un lenguaje para darle
instrucciones a esa mquina.
Entregar por equipo en la
prxima clase.
53