15
Glosario. 1. Código fuente: texto escrito en lenguaje de programación específico y que puede ser leído por un programador. Debe traducirse a lenguaje máquina para que pueda ser ejecutado por la computadora o a bytecode para que pueda ser ejecutado por un intérprete 2. Optimización: Esta fase trata de mejorar el código intermedio, o las estructuras que generaran el código definitivo de modo de que resulte un código de maquina más rápido de ejecutar para guardarlos valores calculados por cada instrucción. 3. Digito: es un signo o carácter que sirve para representar un número. En matemáticas y ciencia de la computación, un dígito numérico es un símbolo, v.gr. 3, usado en numerales combinaciones de símbolos, para representar números enteros o reales en sistemas de numeración posicionales 4. Tokens: es una cadena de caracteres que tiene un significado coherente en cierto lenguaje de programación. Ejemplos de tokens, podrían ser palabras clave if, else, while, int, identificadores, números, signos, o un operador de varios caracteres. 5. Back End: es la parte del software que interactúa con el o los usuarios y el back end es la parte que procesa la entrada desde el front end. La separación del sistema en front ends y back ends es un tipo de abstracción que ayuda a mantener las diferentes partes del sistema separadas 6. MIPS: Es una forma de medir la potencia de los procesadores

Glosario De Trabajo De Examen

Embed Size (px)

Citation preview

Page 1: Glosario De Trabajo De Examen

Glosario.

1. Código fuente: texto escrito en lenguaje de programación específico y que puede ser leído por un programador. Debe traducirse a lenguaje máquina para que pueda ser ejecutado por la computadora o a bytecode para que pueda ser ejecutado por un intérprete

2.Optimización: Esta fase trata de mejorar el código intermedio, o las estructuras que generaran el código definitivo de modo de que resulte un código de maquina más rápido de ejecutar para guardarlos valores calculados por cada instrucción.

3. Digito: es un signo o carácter que sirve para representar un número. En matemáticas y ciencia de la computación, un dígito numérico es un símbolo, v.gr. 3, usado en numerales combinaciones de símbolos, para representar números enteros o reales en sistemas de numeración posicionales

4. Tokens: es una cadena de caracteres que tiene un significado coherente en cierto lenguaje de programación. Ejemplos de tokens, podrían ser palabras clave if, else, while, int, identificadores, números, signos, o un operador de varios caracteres.

5. Back End: es la parte del software que interactúa con el o los usuarios y el back end es la parte que procesa la entrada desde el front end. La separación del sistema en front ends y back ends es un tipo de abstracción que ayuda a mantener las diferentes partes del sistema separadas

6. MIPS: Es una forma de medir la potencia de los procesadores

Page 2: Glosario De Trabajo De Examen

Recomendaciones.

La base a los compiladores se sugiere saber establecer y manejar los lenguajes de programación

Seguir los pasos correctos de los lenguajes de programación ensambladores ect.

Se debe considerar la utilización de otros ensambladores

Permitirse incluir cambios y modificaciones de acuerdo a lo indicado.

Carasteristicas distintas de cada lenguaje en análisis

Page 3: Glosario De Trabajo De Examen

Introducción.

Los compiladores son programas informático que traduce un programa escrito es un lenguaje de programación a otro lenguaje de programación Un traductor es cualquier programa que toma como entrada un texto escrito en un lenguaje, llamado fuente y da como salida otro texto en un lenguaje. El proceso de traducción se compone internamente en varias etapas o frases, que realizan distintas operaciones lógicas. Etapas o frases que realizan distintas operaciones lógicas.

Estas etapas fases como en piezas separadas dentro del traductor. Los lenguajes objeto son igualmente variados; un lenguaje objeto puede ser otro lenguaje de programación o el lenguaje de máquina de cualquier computador entre un microprocesador y un supercomputador.

Fue usado ampliamente en el pasado para el desarrollo de software, pero actualmente sólo se utiliza en contadas ocasiones, especialmente cuando se requiere la manipulación directa del hardware o se pretenden rendimientos inusuales de los equipos. Un ensamblador crea código objeto traduciendo instrucciones del mismo.

Un compilador es un programa que lee un programa escrito es un lenguaje, el lenguaje fuente, y lo traduce a un programa equivalente en otro lenguaje Las tres primeras fases, que forman la mayor parte de la porción de análisis de un compilador se analizan en la sección IX.

Otras dos actividades, la administración de la tabla se símbolos y el manejo de errores, se muestran en interacción con las seis fases de análisis léxico, La estructura de datos permite encontrar rápidamente el registro de cada identificador y almacenar o consultar rápidamente datos en un registro cuando el analizador léxico detecta un identificador en el programa fuente, el identificador se introduce en la tabla de símbolos.

La gramática Bnf es el acrónico de Backus Naur Form, y fue utilizada para describir el algol 60 Backus 59 Naur 63. Algunas definiciones para el correcto de la notación de Bnf. El análisis sintáctico convierte el texto de entrada en otras estructuras comúnmente árboles, que son más útiles para el posterior análisis y capturan la jerarquía implícita de la entrada. Un analizador léxico crea tokens de una secuencia de caracteres de entrada de cada léxico.

Este modelo está formado por un alfabeto de entrada y uno de salida, un símbolo especialmente llamado blanco que un conjunto de estados finitos y un conjunto de transiciones entre dichos estados. Su funcionamiento se basa en una función de transición la entrada de una máquina de Turing viene determinada por el estado actual y el símbolo leído, un par estado, símbolo, siendo el cambio de estado, la escritura de un nuevo símbolo y el movimiento del cabezal, las acciones a tomar en función de una entrada.

Una máquina de Turing computa una determinada función parcial de carácter definido, definida sobre las secuencias de posibles cadenas de símbolos de su alfabeto. Un analizador sintáctico es una de las partes de un compilador que transforma su entrada en un árbol de derivación. El análisis sintáctico convierte el texto de entrada en otras estructuras comúnmente árboles, que son más útiles para el posterior análisis.

Page 4: Glosario De Trabajo De Examen

El objetivo de un análisis ascendente consiste en construir el árbol sintáctico desde abajo hacia arriba, esto es, desde los tokens hacia el axioma, Un analizador sintáctico va construyendo el árbol, se enfrenta a una configuración distinta se denomina configuración y debe tomar una decisión sobre el siguiente paso u operación a realizar.

Básicamente se dispone de cuatro operaciones diferentes, y cada tipo de analizador ascendente se distingue de los demás en base a la inteligencia sobre cuándo aplicar, en el análisis con retroceso no se permiten las reglas, puesto que estas se podrán aplicar de forma indefinida.

El analizador léxico, también conocido como scanner, lee los caracteres uno a uno desde la entrada y va formando grupos de caracteres con alguna relación entre sí tokens, que constituirán la entrada para la siguiente etapa del compilador.

El Analizador Léxico es la etapa del compilador que va a permitir saber si es un lenguaje de formato libre. Frecuentemente va unido al analizador sintáctico en la misma pasada, funcionando entonces como una subrutina de este último. Ya que es el que va leyendo los caracteres del programa, ignorará aquellos elementos innecesarios para la siguiente fase, como los tabuladores, comentarios, espacios en blanco.

Una máquina de estado finito o autómata finito es aquella que tiene un número finito de estados así como se puede introducir una serie de monedas a una máquina recaudadora, también se puede dar a cualquier autómata una serie de caracteres de su alfabeto de entrada.

En una máquina vendedora, también una procesadora de información las señales de entrada son las monedas depositadas y la selección de la mercancía, las señales de salida son la mercancía y, posiblemente, el cambio.

La compilación consiste en la traducción de un programa fuente escrito en un lenguaje de alto nivel  a un programa objeto y luego  se debe utilizar un programa llamado montador o enlazador con linker. El proceso de montaje conduce a un programa en lenguaje máquina directamente ejecutable toma el programa fuente, lo traduce y a continuación lo ejecuta un ejemplo de lenguaje interpretado es Java.

Page 5: Glosario De Trabajo De Examen

Conclusión.

El programa compilador traduce las instrucciones en un lenguaje de alto nivel a instrucciones que la computadora puede interpretar y ejecutar. Para cada lenguaje de programación se requiere un compilador separado. El compilador traduce todo el programa antes de ejecutarlo.

Los compiladores son, pues, programas de traducción insertados en la memoria por el sistema operativo el compilador es un programa que se encarga de traducir los programas escritos por el programador en lenguaje de alto nivel entendible por el ser humano a un lenguaje de bajo nivel que es el comprensible La máquina de Turing puede considerarse como un autómata capaz de reconocer lenguajes formales.

Reconocer los lenguajes recursivamente e numerables, de su potencia es, por tanto, superior a otros tipos de autómatas, como el autómata finito, o el autómata con pila, o igual a otros modelos con la misma potencia computacional.

Este modelo está formado por un alfabeto de entrada y uno de salida, un símbolo especialmente llamado blanco que un conjunto de estados finitos y un conjunto de transiciones entre dichos estados. Su funcionamiento se basa en una función de transición la entrada de una máquina de Turing viene determinada por el estado actual y el símbolo leído, un par estado, símbolo, siendo el cambio de estado, la escritura de un nuevo símbolo y el movimiento del cabezal, las acciones a tomar en función de una entrada.

Una máquina de Turing computa una determinada función parcial de carácter definido, definida sobre las secuencias de posibles cadenas de símbolos de su alfabeto. Un analizador sintáctico es una de las partes de un compilador que transforma su entrada en un árbol de derivación. El análisis sintáctico convierte el texto de entrada en otras estructuras comúnmente árboles, que son más útiles para el posterior análisis.

Una máquina de estado finito o autómata finito es aquella que tiene un número finito de estados así como se puede introducir una serie de monedas a una máquina recaudadora, también se puede dar a cualquier autómata una serie de caracteres de su alfabeto de entrada.

En una máquina vendedora, también una procesadora de información las señales de entrada son las monedas depositadas y la selección de la mercancía, las señales de salida son la mercancía y, posiblemente, el cambio.

La compilación consiste en la traducción de un programa fuente escrito en un lenguaje de alto nivel  a un programa objeto y luego  se debe utilizar un programa llamado montador o enlazador con linker. El proceso de montaje conduce a un programa en lenguaje máquina.

Un árbol semántico es una secuencia de secuencias de expresiones del tipo, donde es una fórmula del lenguaje y n es un índice numérico siendo 0, tal que se constituye a partir de una expresión 1 según ciertas reglas. Esta fase consiste en escribir dentro de un fichero, llamado programa fuente, el programa anterior, utilizando para ello un editor.

Page 6: Glosario De Trabajo De Examen

Esta fase consiste en traducir el programa fuente a lenguaje máquina, obteniéndose el programa objeto, utilizando para Esta fase consiste en ejecutar el programa utilizando un juego de datos de entrada lo suficientemente amplio y diverso para poder asegurar que el programa funciona de forma adecuada, proporcionando los resultados correctos.

La compilación es el proceso de la traducción de programas fuente a programas objeto el programa objeto obtenido de la compilación no ha sido traducido normalmente a código máquina sino a ensamblador. Para conseguir el programa máquina real se debe utilizar un programa llamado montador o enlazador linker.

Los grafos son artefactos matemáticas que permiten expresar de una forma visualmente muy sencilla y efectiva las relaciones que se dan entre elementos.

Una máquina de estado finito se encuentra en uno de sus estados. Al llegar un carácter de entrada, la máquina pasará a otro estado de acuerdo con la función de transición. Además, en cada estado la máquina produce un carácter de salida de acuerdo con la función de salida. Al principio, la máquina se encuentra en su estado inicial.

Page 7: Glosario De Trabajo De Examen

I. Índice.

Introducción……………………………………………………………………………………1

Contenido.

Conceptos de compilación…………………………………………………………………..2

Características………………………………………………………………………………..6

Compiladores en sí que se entiende………………………………………………………7

Ensamblador anexa todo lo que hicimos…………………………………………………8

Los arboles que hay árboles como se identifican……………………………………….18

Gramática BNF………………………………………………………………………………20

La máquina de Turing……………………………………………………………………….22

El análisis sintácticos, como se utilizan pueden ser descendente y ascendentes…………………………………………………………………………………26

El análisis léxico………………………………………………………………………………31

Buffet de entrada……………………………………………………………………………34

Expresiones de maquina finitas…………………………………………………………….37

Page 8: Glosario De Trabajo De Examen

Los arboles son partes Semàticos………………………………………………………….40

Fases de la compilación y como está estructurado………………………………………42

Glosario………………………………………………………………………………………..45

Recomendaciones……………………………………………………………………………46

Anexo………………………………………………………………………………………….47

Infografías…………………………………………………………………………………….49

Conclusión……………………………………………………………………………………50

Bibliografía……………………………………………………………………………………52

Page 9: Glosario De Trabajo De Examen

Infografía.

Page 10: Glosario De Trabajo De Examen

Bibliografía.

www.google.com

www.monografia.com.

www.rincondelvago.com

Page 11: Glosario De Trabajo De Examen

Anexos

Un compilador necesita guardar y usar la información de los objetos que se va encontrando en el texto fuente, como variables, etiquetas, declaraciones de tipos, etc. Esta información se almacena en una estructura de datos interna conocida como tabla de símbolos. El compilador debe desarrollar una serie de funciones relativas a la manipulación de esta tabla como insertar un nuevo elemento en ella, consultar la información relacionada con un símbolo, borrar un elemento, etc. Como se tiene que acceder mucho a la tabla de símbolos los accesos deben ser lo más rápidos posible para que la compilación sea eficiente.

Page 12: Glosario De Trabajo De Examen