Vous êtes sur la page 1sur 8

ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS

Universidad Nacional de San Agustn Integrantes: Dewitt Scott Chavez Ponce Luis Daniel Villanueva Montoya Henry Talavera Daz CURSO: Fundamentos de lenguaje de programacin PROFESOR: Jose Sulla Torres TEMA: Informe sobre el lenguaje de programacin Danhensco

Arequipa-2013

Danhensco Atributos
1. Claridad: Tiene conjunto claro, sencillo y unificado de conceptos que se puedan usar como primitivas en el desarrollo de algoritmos. Adems que es fcil de entender adems de modificar 2. Ortogonalidad: Tienen menos excepciones y hay casos que se pueden recordar 3. Naturalidad: Muestra una estructura lgica del algoritmo a desarrollar 4. Facilidad para verificar: Realiza pruebas antes de que compile

Estandarizacin
Este programa est estandarizado por lo cual al saberlo se puede programar en otros lenguajes o al contrario saber otros lenguajes les facilitaran el uso de este

Estructura
Datos: Se van almacenando en memoria Operaciones: Utiliza RISC Control de secuencia: Sigue un determinado orden en la cual interviene un intrprete Acceso de datos: Utiliza mtodos para acceder al block de notas en el cual est el cdigo desarrollado y a partir de ah se analiza

Diagrama de Flujo
Condicional:

Para, Mientras:

Condicin y alternativas:

Tabla
C++ Int variable; Rango: -2,147,483,648 <= X <= 2,147,483,647 Float variable; Rango 1.18e-38 <= |X| <= 3.40e38 Char variable1; Rango -128 <= X <= 127 Double Rango 2.23e-308 <= |X| <= 1.79e308 If(condicion) Else For(Inicializacion ; condicin ; incremento) Switch(condicin) Case: Default: While(condicin) Do Apertura - { Cierre } Tipo Funcin(parametros) El nuestro Ent variable. Rango: -2,147,483,648 <= X <= 2,147,483,647 Flotant variable. Rango 1.18e-38 <= |X| <= 3.40e38 Crcter variable. Rango -128 <= X <= 127 Doble Rango 2.23e-308 <= |X| <= 1.79e308 Si(condicin) Sino Para (Inicializacion ; condicin; incremento ) Condc (condicin) Caso: Altr: Mientras(Condicin) Hacer Apertura- { Cierre- } Tipo funcin (Parametros)

Elementos sintcticos:
Caracteres: Utiliza el ASCII Identificadores: Tipo y luego cadena conformada por letra y despus un digito Smbolos de Operadores: Adicin :: + Resta :: Multiplicacion :: * Mayor que :: a>b Menor que :: a<b Mayor igual que :: a>=b Menor igual que :: a<=b Lgicos:: &&, || Palabras Clave: Si, Mientras, Para, Mostrar, Tipo: Ent, flotante, doble, Crcter. Comentarios: -/ /Delimitadores: { } ; ( )

Notacin BNF
<unidad traduccion> ::= <decls> <espectipo> <especdecl> <deffun> <listapar> <restolistapar> <declarpar> <oprefopcional> ::= ::= ::= ::= ::= ::= ::= ::= | <decls> <unidad traduccion> <espectipo> <ident> <especdecl> nulo | Crcter | ent| flontant|double <deffun> | <declvar> ( <listapar>) <propcompuesta> | <declarpar> <restolistapar> | , <declarpar> <restolistapar> <espectipo> <oprefopcional> <ident> <arregloopcional> |&

<arregloopcional> <declvar> <listadeclinit> <restolistadeclinit> <declaradorinit>

::= ::= ::= ::= ::=

|[] <declaradorinit> <listadeclinit> ; | , <restolistadeclinit> <ident> <declaradorinit> <listadeclinit> | = <opciondeconstante> <constante> | [ <limopcional > ] <lista opcional> | <constante> | = {<listainicializadores>} <constante> <restolistainic> | , <constante> <restolistainic> { <listadecl> <listaprop> } | <decl> <listadecl> <espectipo> <restolistadeclinit> | <proposicion> <listaprop> <propseleccion> <propiteracion> <propexpresion> <propcompuesta> <propentsalida> <propreturn> | | | | |

<opciondeconstante> ::= <limopcional> <listaopcional> ::= ::=

<listainicializadores> ::= <restolistainic> <propcompuesta> <listadecl> <decl> <listaprop> <proposicion> ::= ::= ::= ::= ::= ::=

<propseleccion> <elseopcional> <propiteracion> <propreturn> <propexpresion> <expresion> <restoexpresion>

::= ::= ::= ::= ::= ::= ::=

si( <expresion> ) <proposicion> <elseopcional> sino <proposicion> mientras( <expresion> ) <proposicion> retornar <expresion> ; | <expresion> ; <expresionsimple> <restoexpresion> | <operador> <expresionsimple> <restoexpresion>

<operador> <expresionsimple>

::= ::=

= | = | == | < | <= | >= | > <operadoropcional> <termino> <restoexpresionsimple> | + | | <oper> <termino> <restoexpresionsimple> + | - | || <factor> <restotermino> | <opermul> <factor> <restotermino> * | / | && <variable> <constante> ( <expresion> ) ( <expresion> ) <invocfcion> <cte-string> | | | | |

<operadoropcional> ::= <restoexpresionsimple>::= <oper> <termino> <restotermino> <opermul> <factor> ::= ::= ::= ::= ::=

<variable> <restoopcional> <constante> <invocfcion> <listaexprs> <restlistaexpr> <propentsalida> <restopropout> <ctenum> <restocteopcional> <numero> <restonumero> <ctechar>

::= ::= ::= ::= ::= ::= ::= ::= ::= ::= ::= ::= ::=

<ident> <restoopcional> | [ <expresion> ] <ctenum> | <ctechar> <ident> ( <listaexpres> ) | <expresion> <restlistaexpr> | , <expresion> <restlistaexpr> Mostrar<expresion> <restopropout> ; | <expresion> <restopropout> <numero> <restocteopcional> | . <numero> <digito> <restonumero> | <digito> <restonumero> <ascii>

<cte-string> <cadena> <digito> <ascii> <ident> <restoident> <letra>

::= ::= ::= ::= ::= ::= ::=

<cadena> | <ascii> <cadena> 0|1 || 9 <letra> | <digito> | * | | ^ | . <letra> <restoident> | <letra> <restoident> | <digito> <restoident> a | | z | A | . | Z

Anlisis del programa Fuente


Anlisis Lxico
Abre el block de notas donde se encuentra el cdigo y comienza analizar y a separar en constituyentes elementales verifica si corresponde a cada componente pero para eso se utilizan defines antes para darle un valor a cada componente y se van almacenando en un arreglo de tokens ya despus comienza a mostrar en pantalla cada token he indica si es un delimitador, palabra reservada, identificador

Anlisis Sintctico
En esta parte utiliza el arreglo de tokens y comienza a analizar la primera lnea y si hay algn error pues se ha creado un contador de errores y tambin un indicador de donde est el error y as se va estableciendo analizndolo lnea por lnea y si no encuentra ningn error manda un mensaje que no se ha encontrado ningn error en el caso contrario muestra posicin del error y nmero de errores

Vous aimerez peut-être aussi