SlideShare una empresa de Scribd logo
1 de 12
Glosario.<br />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<br />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.<br />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<br />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.<br />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<br />MIPS: Es una forma de medir la potencia de los procesadores<br />Recomendaciones.<br />La base a los compiladores se sugiere saber establecer y manejar los lenguajes de programación <br />Seguir los pasos correctos de los lenguajes de programación ensambladores ect.<br />Se debe considerar la utilización de otros ensambladores <br />Permitirse incluir cambios y modificaciones de acuerdo a lo indicado.<br />Carasteristicas distintas de cada lenguaje en análisis<br />Introducción.<br />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. <br />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. <br />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.<br />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. <br />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. <br />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. <br />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. <br />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. <br />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. <br />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.<br />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. <br />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.<br />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. <br />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.<br />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. <br />Conclusión.<br />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. <br />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. <br />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. <br />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. <br />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. <br />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. <br />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.<br />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. <br />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.<br />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. <br />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. <br />Los grafos son artefactos matemáticas que permiten expresar de una forma visualmente muy sencilla y efectiva las relaciones que se dan entre elementos. <br />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. <br />Índice.<br />Introducción……………………………………………………………………………………1<br />Contenido.<br />Conceptos de compilación…………………………………………………………………..2<br />Características………………………………………………………………………………..6<br />Compiladores en sí que se entiende………………………………………………………7<br />Ensamblador anexa todo lo que hicimos…………………………………………………8<br />Los arboles que hay árboles como se identifican……………………………………….18<br />Gramática BNF………………………………………………………………………………20<br />La máquina de Turing……………………………………………………………………….22<br />El análisis sintácticos, como se utilizan pueden ser descendente y ascendentes…………………………………………………………………………………26<br />El análisis léxico………………………………………………………………………………31<br />Buffet de entrada……………………………………………………………………………34<br />Expresiones de maquina finitas…………………………………………………………….37<br />Los arboles son partes Semàticos………………………………………………………….40<br />Fases de la compilación y como está estructurado………………………………………42<br />Glosario………………………………………………………………………………………..45<br />Recomendaciones……………………………………………………………………………46<br />Anexo………………………………………………………………………………………….47<br />Infografías…………………………………………………………………………………….49<br />Conclusión……………………………………………………………………………………50<br />Bibliografía……………………………………………………………………………………52<br /> <br /> <br />Infografía.<br />Bibliografía.<br />www.google.com<br />www.monografia.com.<br />www.rincondelvago.com<br />Anexos<br />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.<br />
Código fuente, tokens, compiladores
Código fuente, tokens, compiladores
Código fuente, tokens, compiladores
Código fuente, tokens, compiladores
Código fuente, tokens, compiladores
Código fuente, tokens, compiladores
Código fuente, tokens, compiladores
Código fuente, tokens, compiladores
Código fuente, tokens, compiladores
Código fuente, tokens, compiladores
Código fuente, tokens, compiladores

Más contenido relacionado

La actualidad más candente

Cap4 compiladores
Cap4 compiladoresCap4 compiladores
Cap4 compiladoresCJAO
 
Materia unidad compiladores
Materia unidad compiladoresMateria unidad compiladores
Materia unidad compiladoresbachispasaca
 
Evolucion de los compiladores1
Evolucion de los compiladores1Evolucion de los compiladores1
Evolucion de los compiladores1udalrico
 
Cap1 compiladores
Cap1 compiladoresCap1 compiladores
Cap1 compiladoresCJAO
 
Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraAlexandraMolinaSanchez
 
Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico maryr_
 
Clase de lenguajes de programación
Clase de lenguajes de programaciónClase de lenguajes de programación
Clase de lenguajes de programacióncoopermcfly
 
Clase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosClase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosInfomania pro
 
DiseñO De Compilador
DiseñO De CompiladorDiseñO De Compilador
DiseñO De CompiladorBigbossH
 
Compiladores
CompiladoresCompiladores
CompiladoresIsabel
 
Generador de codigo intermedio
Generador de codigo intermedioGenerador de codigo intermedio
Generador de codigo intermedioGuillermo
 
Analisis semantico
Analisis semanticoAnalisis semantico
Analisis semanticoAreli Gómez
 
Python guia01 1
Python guia01 1Python guia01 1
Python guia01 1zeta2015
 

La actualidad más candente (20)

Cap4 compiladores
Cap4 compiladoresCap4 compiladores
Cap4 compiladores
 
Materia unidad compiladores
Materia unidad compiladoresMateria unidad compiladores
Materia unidad compiladores
 
Compiladores, Analisis Lexico, Ejemplo Minilenguaje
Compiladores, Analisis Lexico, Ejemplo MinilenguajeCompiladores, Analisis Lexico, Ejemplo Minilenguaje
Compiladores, Analisis Lexico, Ejemplo Minilenguaje
 
Evolucion de los compiladores1
Evolucion de los compiladores1Evolucion de los compiladores1
Evolucion de los compiladores1
 
Cap1 compiladores
Cap1 compiladoresCap1 compiladores
Cap1 compiladores
 
Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandra
 
Unidad1 2 Lenguajes y automatas
Unidad1 2  Lenguajes y automatasUnidad1 2  Lenguajes y automatas
Unidad1 2 Lenguajes y automatas
 
Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Clase de lenguajes de programación
Clase de lenguajes de programaciónClase de lenguajes de programación
Clase de lenguajes de programación
 
Clase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosClase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptos
 
Analizador léxico
Analizador léxicoAnalizador léxico
Analizador léxico
 
DiseñO De Compilador
DiseñO De CompiladorDiseñO De Compilador
DiseñO De Compilador
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Analizador lexico
Analizador lexicoAnalizador lexico
Analizador lexico
 
Analisis lexico automatas i
Analisis lexico automatas iAnalisis lexico automatas i
Analisis lexico automatas i
 
Compilador
CompiladorCompilador
Compilador
 
Generador de codigo intermedio
Generador de codigo intermedioGenerador de codigo intermedio
Generador de codigo intermedio
 
Analisis semantico
Analisis semanticoAnalisis semantico
Analisis semantico
 
Python guia01 1
Python guia01 1Python guia01 1
Python guia01 1
 

Similar a Código fuente, tokens, compiladores

Similar a Código fuente, tokens, compiladores (20)

Resumencap1 carmen vargas_jeremycamacho
Resumencap1 carmen vargas_jeremycamachoResumencap1 carmen vargas_jeremycamacho
Resumencap1 carmen vargas_jeremycamacho
 
Corporacion universitaria remington compiladores deisy
Corporacion universitaria remington compiladores deisyCorporacion universitaria remington compiladores deisy
Corporacion universitaria remington compiladores deisy
 
Compiladores (1) pedro vasques
Compiladores (1) pedro vasquesCompiladores (1) pedro vasques
Compiladores (1) pedro vasques
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Compiladores y analizador lexicos
Compiladores y analizador lexicosCompiladores y analizador lexicos
Compiladores y analizador lexicos
 
C:\documents and settings\clientea\mis documentos\compiladores
C:\documents and settings\clientea\mis documentos\compiladoresC:\documents and settings\clientea\mis documentos\compiladores
C:\documents and settings\clientea\mis documentos\compiladores
 
investigacion 4.4 y 4.5.pdf
investigacion 4.4 y 4.5.pdfinvestigacion 4.4 y 4.5.pdf
investigacion 4.4 y 4.5.pdf
 
conceptos basicos programacion
conceptos basicos programacionconceptos basicos programacion
conceptos basicos programacion
 
Qué es un algoritmo
Qué es un algoritmoQué es un algoritmo
Qué es un algoritmo
 
Introduccion
IntroduccionIntroduccion
Introduccion
 
Herramientas de software
Herramientas de softwareHerramientas de software
Herramientas de software
 
Compilador
CompiladorCompilador
Compilador
 
Pasadas multiples
Pasadas       multiplesPasadas       multiples
Pasadas multiples
 
Actividad 2 programacion de sistemas
Actividad 2 programacion de sistemasActividad 2 programacion de sistemas
Actividad 2 programacion de sistemas
 
Introducción A Compiladores
Introducción A Compiladores Introducción A Compiladores
Introducción A Compiladores
 
Qué es un algoritmo
Qué es un algoritmoQué es un algoritmo
Qué es un algoritmo
 
C:\fakepath\compilador
C:\fakepath\compiladorC:\fakepath\compilador
C:\fakepath\compilador
 
C:\fakepath\compilador
C:\fakepath\compiladorC:\fakepath\compilador
C:\fakepath\compilador
 
Compiladores trabajo numero 4
Compiladores trabajo numero 4Compiladores trabajo numero 4
Compiladores trabajo numero 4
 
Actividad26
Actividad26Actividad26
Actividad26
 

Último

Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 

Último (20)

Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 

Código fuente, tokens, compiladores

  • 1. Glosario.<br />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<br />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.<br />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<br />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.<br />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<br />MIPS: Es una forma de medir la potencia de los procesadores<br />Recomendaciones.<br />La base a los compiladores se sugiere saber establecer y manejar los lenguajes de programación <br />Seguir los pasos correctos de los lenguajes de programación ensambladores ect.<br />Se debe considerar la utilización de otros ensambladores <br />Permitirse incluir cambios y modificaciones de acuerdo a lo indicado.<br />Carasteristicas distintas de cada lenguaje en análisis<br />Introducción.<br />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. <br />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. <br />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.<br />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. <br />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. <br />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. <br />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. <br />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. <br />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. <br />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.<br />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. <br />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.<br />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. <br />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.<br />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. <br />Conclusión.<br />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. <br />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. <br />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. <br />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. <br />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. <br />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. <br />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.<br />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. <br />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.<br />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. <br />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. <br />Los grafos son artefactos matemáticas que permiten expresar de una forma visualmente muy sencilla y efectiva las relaciones que se dan entre elementos. <br />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. <br />Índice.<br />Introducción……………………………………………………………………………………1<br />Contenido.<br />Conceptos de compilación…………………………………………………………………..2<br />Características………………………………………………………………………………..6<br />Compiladores en sí que se entiende………………………………………………………7<br />Ensamblador anexa todo lo que hicimos…………………………………………………8<br />Los arboles que hay árboles como se identifican……………………………………….18<br />Gramática BNF………………………………………………………………………………20<br />La máquina de Turing……………………………………………………………………….22<br />El análisis sintácticos, como se utilizan pueden ser descendente y ascendentes…………………………………………………………………………………26<br />El análisis léxico………………………………………………………………………………31<br />Buffet de entrada……………………………………………………………………………34<br />Expresiones de maquina finitas…………………………………………………………….37<br />Los arboles son partes Semàticos………………………………………………………….40<br />Fases de la compilación y como está estructurado………………………………………42<br />Glosario………………………………………………………………………………………..45<br />Recomendaciones……………………………………………………………………………46<br />Anexo………………………………………………………………………………………….47<br />Infografías…………………………………………………………………………………….49<br />Conclusión……………………………………………………………………………………50<br />Bibliografía……………………………………………………………………………………52<br /> <br /> <br />Infografía.<br />Bibliografía.<br />www.google.com<br />www.monografia.com.<br />www.rincondelvago.com<br />Anexos<br />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.<br />