1. Lenguaje de
Programación
Mike Alvarado
Barinas, Mayo 2016
UNIVERSIDAD NACIONAL EXPERIMENTAL DE LOS LLANOS OCCIDENTALES
“EZEQUIEL ZAMORA”
VICE-RECTORADO DE PLANIFICACIÓN Y DESARROLLO SOCIAL
PROGRAMA INGENIERÍA, ARQUITECTURA Y TECNOLOGÍA
INGENIERÍA EN INFORMÁTICA
2. Lenguaje de Programación
Es un lenguaje formal diseñado para realizar procesos que puede ser
llevado a cabo por maquinas como las computadoras. Puede usarse para crea
programas que controlen el comportamiento físico y lógico de una maquina ,
para expresar algoritmos con precisión , o como modo de comunicación
humana. Esta formado por un conjunto de símbolos y reglas sintácticas y
semánticas que definen su estructura y bel significado de sus elementos y
expresiones.
3. Sintaxis
Las reglas que determina el significado de los programas constituyen la semánticas de los
lenguajes de programación. Es mas difícil de especificar que la sintaxis.
Semántica
Un programa en cualquier lenguaje se puede concebir como un string de caracteres
escogidos de algún conjunto o alfabeto de caracteres. Posteriormente , se estudiaran ciertas
notaciones denominadas expresiones regulares y gramáticas libres de contexto, muy usadas
no solo para especificar las sintaxis de los lenguajes de programación sino también para
contribuir en la construcción de sus compiladores.
4. Sintaxis Interpretativa
Un lenguaje de maquina tiene un semántica definida por el computador. Un programa en
lenguaje de maquina "significa" exactamente que el computador hace el programador hace
cuando el programa "corre" o se ejecuta. Sin embargo, con un lenguaje de alto nivel no se
puede dejar que el computador defina la semántica de lenguaje, puesto que no es posible
"correr programas y ver" hasta que se tenga un compilador. No se puede tener un compilador
y saber que es correcto hasta haber definido lo que los programas significa.
LaTraducción
De un lenguaje assembly a lenguaje de maquina ( que es directa y comprensible) , forma
una especificación semántica muy usada para un lenguaje assembly.
5. Definiciones
• DefiniciónAxiomática
Se puede definir reglas que relacionan los datos antes y después de la ejecución de cada
programa. Estas reglas se pueden usar para proveer teoremas acerca de la relación E/S de un
programa. este enfoque tiene ventajas que puede usarse para definir semánticas para un
aparte mas que para todos los aspectos de un lenguaje.
• Definición Extensible
En este enfoque se definen ciertas operaciones primitivas y el significados del lenguaje en
términos de esta primitivas ejemplo LISP.
• Semánticas Matemáticas o denotacional
Es objetos matemáticos correspondes a programas que son definidos y reglas abstractas para
traducir programas a esto objetos abstractos.
• La estructura jerárquica de los lenguajes de programación:
Un lenguaje de programación es una notación para especificar una secuencia de operaciones
a realizar sobre objetos datos. Estos se pueden agrupar en una jerarquía de árbol, cuyas
unidades son comunes y familiares a la mayoría de los lenguajes.
6. • Lenguajes de alto nivel:
Existen cientos lenguajes de programación los cuales difieren en el grado de clausura a un
lenguaje natural o matemático por una parte , y al lenguaje de máquina por otra.
• Facilidad de Entender . Un programa en lenguaje de alto nivel es: fácil de leer y de escribir la
notación mas natural de describir algoritmo un buen lenguaje de programación debería
proveer aspectos para el diseño modular contemplando operadores ,estructura de datos,
flujo de control.
• Naturalidad. Facilidad de poder expresar un algoritmo en el lenguaje( sentencias
estructuradas, estructura natural del algoritmo)
• Portabilidad. posibilidad de ejecutar programas en una variedad de maquinas
•
• Eficiencia de uso. Considerar aspecto el lenguaje como de los programas. Compilación
eficiente.
7. • Elementos Sintacticos de lenguaje de programacion:
• Conjuntos de caracteres:
Es la primera etapa en el diseño e la sintaxis de un lenguaje casi todos tienen el mismo
conjunto de letras y digitos . La diferencia esta en los caracteres especiales incie en la
determinancion del tipo de equipo para la E/S.
• Identificadores:
• sintaxis basica .string de letra y/o digitos comenzandoscon letras se introducen caracteres
especiales que facilitan la lectura.
• Operadores:
La mayoria de los lenguajes tiene un conjunto estandar de operadores aritmeticos
relacionales y logico.
• Palabras claves y reservadas:
• palabras claves: identificador usado como parte fija de la sintaxis de una sentencia.
• palabra reservada: palabra clave que no puede ser usada como identificador. El analisis
sintactico se facilita usando palabras reservadas. Generalmente una sentencia comienza
con palabras claves designando el tipo de sentencia.
8. • Comentarios y palabras opcionales:
La mayoria de los lenguajes permite incluir comentarios en los programas. Los comentarios
no son considerados durante la compilacion.
• Espacio en blanco: varia su inclusion entre un lenguaje y otro.
• Delimitadores: Es un elemento sintactico para marcar el comienzo y el fin de una unidad
sintactica ejemplo: BEGIN
• Formato libre y fijo:
una sintaxis es libre si las sentencias del programa se pueden escribir en cualquier parte de una
linea sin observar la posicion o salto e linea. ejemplo pascal. una sintaxis es fijas si utilizala
posicion en la linea para proporcionar informancion.
• Expresiones: son unidades sintacticas basica con las cuales se construyen sentencias. Hay
distintas formas para escribir una expresion:
infija,prefija,postifija(inorden,preorden,postorden)
• Sentencias: son las componentes sintacticas mas importantes de los lenguajes de
programacion. Algunos tienen formatos basico de sentencias. Existen diferentes sintaxis
para cada tipo diferente de sentencia.
• Estructura de programa y subprograma: la organizacion sintactica de un programa y la
definicion de subprograma es variada.
• Definicion variada de subprograma, cada definicion e subprograma es tratada como una
unidad sintactica separada. Las principales estructuras de los programas son bloques
,subprograma , el bloque se ejecuta cuando la secuencia de ejecucion llega.
9. • Definicion de subprogramas anidados:
Un ejemplo se da en ALGOL que muestra la estructura de programas anidados en que la
definicion del subprograma aparece como declaracion en el programa principal.
Descripcion separada de datosy sentencia ejecutables, un respesentante es el COBOL. Las
declaraciones de datos y sentencias ejecutables para los subprogramas ( parrafos) se
encuentran en la DATA DIVISION y en la PROCEDURE DIVISION, respectivamente.
• Definicion de subprogramas no separados
no hay diferencia sintactica entre las las sentencias del programa y las de subprograma. Un
ejemplo SNOBOL:independiente del numero de subprogramas que contenga el programa, es
una lista de sentencia.Los programadores introducen una separacion artificial insertando
comentarios.
• Palabras reservadas e independencia del lenguaje
En la CLI de NET, todos los lenguajes tienen que proporcionar un mecanismo para utilizar los
identificadores publicos que son palabras reservada en ese lenguaje es necesario, que se
define una clase en VB,NET. Entonce, se compila esta clase en un ensamblado de , NET y se
distribuye como parte de un conjunto de herramientas. Un programador de C#, que quiere
definir una variable de tipo "this"
10. • Palabras reservadas en SQL
En SQL, son palabras reservadas todas las sentencias, clausulas modificadoras,tipos de datos
y funciones propias del DBMS.Asi , por ejemplo, no se pueden usar denominaciones tales
como SELECT,GROUP,CONCAT,SUM,MAX o semenjates. En cada DBMS, ademas , existen
conjuntos de denominaciones que le son propias , y que si pueen ser usadas en otros,lo que
tiende a producir ciertos problemas al migrar proceso o sintaxis de uno a otro.
La palabras reservadas no puede ser utilizada por el usuario par nombrar a las variables
,funciones ,procedimientos,objetos y demas elementos de programacion que cree.
• Lenguaje de alto nivel
Son aquellos que se encuentra mas cercanos al lenguaje natural que al lenguaje maquina. Esta
dirigidos a solucionar problemas mediante el uso de EDD's . Nota: EDD's son las abreviaturas
de Estructuras Dinamicas de Datos , algo muy utilizado en todos los lenguajes de
programacion . Son estructura que pueden cambiar de tamaño durante la ejecucion del
programa.
11. • Archivos de Encabezados
Los archivos de descripcion de interface , tambien archivos de encabezado(hearde) o archivos
"include" (archivos.h.) . Los archivos de encabezados contienen las declararciones de
constantes,variables y funciones de las que constael modulo , asi llamadas a otros archivos de
encabezados necesarios.Un archivo encabezado se puede crear desde el IDE de desarrollo o
desde cualquier editor de texto y agregandolo posteriormente al proyecto.
• Identificadores y palabras claves
Los identificadores son nombres que se les da a varios elementos e un programa , como
variable , funciones y arrays. Un identificador esta formado por letras y digitos , en cualquier
orden , excepto el primer caracter , que debe ser una letra.No se limita la longitud de los
identificadores, aunque la mayoria de ellas reconocen mas.( tipicamente , 31 carcteres) . El
estandar ANSI reonoce 31 caracteres . El resto de los caracteres son utilizados para la
comodidad del programador. Ejemplo : los identificadores suma de valores y suma de
variaciones son valido gramaticalmente. Sin embargo , algunos compiladores de C pueden no
ser capaces de distinguirlos, ya que ambos tienen las misma ocho primeras letras.De esta
forma, en un compilador asi solo se podra utilizar unos de estos identificadores.Como norma
general un identificador debe tener los suficientes caracteres como para que su significado se
reconozca facilmente , por otra parte se debe evitar un excesivo numeros de carecteres.