SlideShare uma empresa Scribd logo
1 de 37
Teorías autómatas  y  Lenguajes formales Docente: Ing. Iver Claros Ascui Santa Cruz - Bolivia
EVOLUCIÓN DE LOS COMPILADORES
Here comes your footer     Page  TITULOS ,[object Object],[object Object],[object Object],[object Object],[object Object]
COMPILADOR Here comes your footer     Page  Un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa equivalente que la máquina será capaz de interpretar. El segundo lenguaje es lenguaje de máquina, pero también puede ser simplemente texto. Este proceso de traducción se conoce como compilación. Un compilador es un programa que permite traducir el código fuente de un programa en lenguaje de alto nivel
HISTORIA Here comes your footer     Page  En 1946 se desarrolló la primera computadora digital. En un principio, estas máquinas ejecutaban instrucciones consistentes en códigos numéricos que señalaban a los circuitos de la máquina los estados correspondientes a cada operación, lo que se denominó  lenguaje máquina . 1946 la computadora digital. En un principio, estas máquinas ejecutaban instrucciones consistentes en códigos numéricos, a cada operación, lo que se denominó  lenguaje máquina .
Here comes your footer     Page  Pronto los primeros usuarios de estos ordenadores descubrieron la ventaja de escribir sus programas mediante claves más fáciles de recordar que esos códigos; al final, todas esas claves juntas se traducían manualmente a lenguaje máquina. Estas claves constituyen los llamados lenguajes ensambladores. Los trabajos de investigación se orientaron hacia la creación de un lenguaje que expresara las distintas acciones a realizar de una manera lo más sencilla posible para una persona.
Here comes your footer     Page  El primer compilador fue escrito por Grace Hopper, en 1952 para el lenguaje de programación A-0, En 1950  John Backus  dirigió una investigación en IBM sobre un lenguaje algebraico. En 1954 se empezó a desarrollar un lenguaje que permitía escribir fórmulas matemáticas de manera traducible por un ordenador; le llamaron FORTRAN (FORmulae TRANslator). Fue el primer lenguaje de alto nivel y se introdujo en 1957 para el uso de la computadora IBM modelo 704.
TIPOS DE COMPILADORES Here comes your footer     Page  Compiladores cruzados : generan código para un sistema distinto del que están funcionando. Compiladores optimizadores : realizan cambios en el código para mejorar su eficiencia, pero manteniendo la funcionalidad del programa original. Compiladores de una sola pasada : generan el código máquina a partir de una única lectura del código fuente. Compiladores de varias pasadas : necesitan leer el código fuente varias veces antes de poder producir el código máquina. Compiladores JIT  (Just In Time): forman parte de un  intérprete  y compilan partes del código según se necesitan.
CARACTERÍSTICAS DE UN COMPILADOR  Here comes your footer     Page  Front End:  parte que analiza el código fuente, comprueba su validez, genera el árbol de derivación y rellena los valores de la tabla de símbolos. Parte que suele ser independiente de la plataforma o sistema operativo para el que funcionará. Back End:  parte en donde se genera el código máquina exclusivo para una plataforma a partir de lo analizado en el front end.
COMPILADORES DE JAVA
Here comes your footer     Page  El lenguaje de programación  Java , fue diseñado por la compañía Sun Microsystems Inc, con el propósito de crear un lenguaje que pudiera funcionar en  redes  computacionales heterogéneas  (  redes de computadoras  formadas por más de un tipo de computadora, ya sean PC, MAC's, estaciones de  trabajo , etc.),y que fuera independiente de la plataforma en la que se vaya a ejecutar. Esto significa que un programa de Java puede ejecutarse en cualquier máquina o plataforma.
CARACTERÍSTICAS DEL  COMPILADOR JAVA Here comes your footer     Page  ,[object Object],[object Object],[object Object],Ausencia de punteros:  Protege frente a imitación de objetos, violación de encapsulación, acceso a áreas protegidas de memoria, ya que el programador no podrá referenciar posiciones de memoria específicas no reservadas, a diferencia de lo que se puede hacer en C y C++.
Here comes your footer     Page  Gestión de memoria:  Ya no se puede gestionar la memoria de forma tan directa como en C, (no hay malloc). En cambio, se instancian objetos, no se reserva memoria directamente con la memoria y con el SO.  Control de métodos y variables de clases:  Las variables y los métodos declarados privados sólo son accesibles por la clase o subclases herederas de ella y los declarados como protegidos, sólo por la clase
Here comes your footer     Page  Métodos y clases final: Las clases y los métodos (e incluso los datos miembro) declarados como final no pueden ser modificados o sobrescritos. Una clase declarada final no puede ser ni siquiera extendida.  Recogida de basura:  El programador ya no libera la memoria manualmente mediante free. El recogedor de basura de Java se encarga de reclamar la memoria usada por un objeto una vez que éste ya no es accesible o desaparece.
Here comes your footer     Page  VERIFICADOR DE CÓDIGOS DE BYTES permite ejecutar código de bytes de programas Java válidos, buscando intentos de:  Fabricar punteros  Ejecutar instrucciones en código nativo  Llamar a métodos con parámetros no válidos  Usar variables antes de inicializarlas
Here comes your footer     Page  El verificador efectúa cuatro pasadas sobre cada fichero de clase:  En la primera , se valida el formato del fichero.  En la segunda , se comprueba que no se instancien subclases de clases final.  En la tercera , se verifica el código de bytes: la pila, registros, argumentos de métodos, opcodes.  En la cuarta , se finaliza el proceso de verificación, realizándose los últimos tests.
Here comes your footer     Page  EL MODELO DE LAS CUATRO CAPAS Este modelo se implementa mediante la construcción de cuatro barreras o líneas de defensa:  Primera línea de defensa : Características del lenguaje/compilador  Segunda línea  de defensa: Verificador de código de bytes  Tercera línea de defensa : Cargador de clases  Cuarta línea de defensa : Gestor de Seguridad
COMPILADORES DE C SHARP
Here comes your footer     Page  COMPILADORES C SHARP Es un  lenguaje de programación   orientado a objetos  desarrollado y estandarizado por  Microsoft  como parte de su plataforma  .NET . Esta es una  interfaz de programación de aplicaciones  ( API ), mientras que C ♯  es un lenguaje de programación independiente diseñado para generar programas sobre dicha plataforma.
Here comes your footer     Page  TIPOS DE COMPILADORES ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Here comes your footer     Page  SUS CARACTERISTICAS ,[object Object],[object Object]
Here comes your footer     Page  ,[object Object],[object Object],[object Object],[object Object],[object Object]
INTERNET EXPLORER
Here comes your footer     Page  Windows Internet Explorer (anteriormente Microsoft Internet Explorer; abreviado MSIE), conocido comúnmente como IE, es un  navegador web  desarrollado por  Microsoft  para el sistema operativo  Microsoft Windows  desde  1995 .  Posteriormente se introduciría gratuitamente en determinadas versiones  OEM  de Windows 95, y además se incluyó de forma predeterminada en versiones posteriores de Windows.
Here comes your footer     Page  CARACTERÍSTICAS Internet Explorer ha sido diseñado para una amplia gama de páginas web y para proporcionar determinadas funciones dentro de los  sistemas operativos , incluyendo  Windows Update .  Internet Explorer, utilizando el motor de diseño  Trident , casi en su totalidad soporta  HTML  4.01,  CSS  1.0 y  XML  1, con pequeñas lagunas de contenido. Soporta parcialmente CSS nivel 2 y DOM Nivel 2, con importantes deficiencias en el contenido y cuestiones de conformidad.
Here comes your footer     Page  Es totalmente compatible con  XSLT  1.0, así como un dialecto de XSLT obsoleto creado por  Microsoft  al que se refiere a menudo como WD-XSL. Está proyectado soporte para XSLT 2.0 para versiones futuras. Internet Explorer ha sido objeto de críticas por su limitado apoyo a  estándares web  abiertos y un objetivo de mayor importancia de  Internet Explorer 8 , es mejorar el apoyo a las normas ya dichas.
Here comes your footer     Page  USABILIDAD Y ACCESIBILIDAD Internet Explorer hace uso de la accesibilidad prevista en Windows. Internet Explorer también es una interfaz de usuario de  FTP , con operaciones similares a las del Explorador de Windows (aunque ésta característica requiere una ventana que se abre en las últimas versiones del navegador, en lugar de forma nativa en el navegador).
Here comes your footer     Page  VULNERABILIDADES DE SEGURIDAD Internet Explorer ha sido objeto de muchas vulnerabilidades de seguridad y preocupaciones: la mayor parte de  spyware ,  adware , y  virus informáticos  se transmite través de Internet por la explotación de los fallos y defectos en la arquitectura de seguridad. Una amplia serie de fallos de seguridad que afectan a IE no se originan en el  navegador  en sí, sino en los  ActiveX  utilizados por éste.
Here comes your footer     Page  ELIMINACIÓN La idea de la eliminación de Internet Explorer se propuso durante la batalla entre  Estados Unidos  y  Microsoft . Los críticos consideraron que los usuarios deberían tener el derecho de desinstalar Internet Explorer libremente como cualquier otro  software  o  aplicación .  Uno de los argumentos de  Microsoft  durante el juicio fue que la eliminación de Internet Explorer en Windows puede dar lugar a una inestabilidad del sistema.
MOZILLA FIREFOX
Here comes your footer     Page  Es un  navegador web   libre y de código abierto , descendiente de  Mozilla Application Suite  y actualmente desarrollado por la  Corporación Mozilla , la  Fundación Mozilla  y un gran número de voluntarios externos. Firefox es el segundo navegador más utilizado de Internet, con una cuota de mercado del 22,96% a finales de septiembre de 2010, según la firma  Net Applications . Otras fuentes de medición global sitúan el uso de Firefox entre el 21% y el 32%.
Here comes your footer     Page  Incluye  navegación por pestañas ,  corrector ortográfico , búsqueda progresiva, marcadores dinámicos, un  administrador de descargas ,  navegación privada , navegación con  georreferenciación  y un sistema de búsqueda integrado que utiliza el  motor de búsqueda  que desee el usuario. Además se pueden añadir funciones a través de  complementos  desarrollados por terceros, entre los que hay una amplia selección, característica que ha atraído a muchos de los usuarios actuales del navegador. CARACTERISTICAS
Here comes your footer     Page  Firefox es un navegador  multiplataforma  y está disponible en varias versiones de  Microsoft Windows ,  Mac OS X ,  GNU/Linux  y algunos sistemas basados en  Unix . Su  código fuente  es  software libre , publicado bajo una  triple licencia   GPL / LGPL / MPL . COMPATIBILIDAD CON ESTÁNDARES WEB Es compatible con varios estándares web, incluidos  HTML ,  XML ,  XHTML ,  SVG  1.1 (parcial),  CSS  1, 2 y 3, []   ECMAScript  ( JavaScript ),  DOM ,  MathML ,  DTD ,  XSLT ,  XPath , e imágenes  PNG  con  transparencia alfa .
Here comes your footer     Page
Here comes your footer     Page  SEGURIDAD Firefox usa un  sistema de seguridad sandbox . []  Utiliza el sistema  SSL/TLS  para proteger la comunicación con los servidores web, utilizando fuerte  criptografía  cuando se utiliza el protocolo  Https . Cuenta con una protección antiphishing, antimalware e integración con el antivirus. También y como medida prudencial que ha causado controversia, Firefox no incluye compatibilidad alguna con los sistemas  ActiveX
Here comes your footer     Page  BUSCADOR Firefox incluye de serie un buscador integrado en la interfaz que hace búsquedas en Google y en otros buscadores localizados para el idioma de la traducción. También permite la opción de añadir buscadores de la base de datos online de Mycroft.  GESTOR DE DESCARGAS Se incluye también con el paquete oficial, un sistema de gestión de descargas que permite descargar numerosos archivos simultáneamente y abrirlos una vez han finalizado y pausarlos para descargas de archivos grandes.
Here comes your footer     Page

Mais conteúdo relacionado

Mais procurados

Gramática Libre de Contexto
Gramática Libre de ContextoGramática Libre de Contexto
Gramática Libre de ContextoBrayhan Acosta
 
Herramientas Case
Herramientas CaseHerramientas Case
Herramientas Caseguestf131a9
 
Cuadro comparativo.
Cuadro comparativo.Cuadro comparativo.
Cuadro comparativo.carmenmc2017
 
1.3 lenguajes de simulacion y simuladores
1.3 lenguajes de simulacion y simuladores1.3 lenguajes de simulacion y simuladores
1.3 lenguajes de simulacion y simuladoresJoOsee Kette
 
Modelo cascada
Modelo cascadaModelo cascada
Modelo cascadamasilog
 
Categorías de software de aplicación
Categorías de software de aplicaciónCategorías de software de aplicación
Categorías de software de aplicaciónquezadatos
 
Maquinas virtuales
Maquinas virtualesMaquinas virtuales
Maquinas virtualesisma2013
 
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...Hugo Alberto Rivera Diaz
 
Interprete vs compilador
Interprete vs compiladorInterprete vs compilador
Interprete vs compiladorElba Sepúlveda
 
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasTópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasJosé Antonio Sandoval Acosta
 
Programacion Orientada a Eventos
Programacion Orientada a EventosProgramacion Orientada a Eventos
Programacion Orientada a EventosLaura
 
PARADIGMA IMPERATIVO
PARADIGMA IMPERATIVOPARADIGMA IMPERATIVO
PARADIGMA IMPERATIVOFredy Olaya
 
Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)YJGG
 
Evolución de la Programación
Evolución de la ProgramaciónEvolución de la Programación
Evolución de la ProgramaciónAlessandro Viera
 
Introduccion a la programacion
Introduccion a la programacionIntroduccion a la programacion
Introduccion a la programacionJose Marroquin
 

Mais procurados (20)

Gramática Libre de Contexto
Gramática Libre de ContextoGramática Libre de Contexto
Gramática Libre de Contexto
 
Herramientas Case
Herramientas CaseHerramientas Case
Herramientas Case
 
Exposición de Lenguajes de Programación
Exposición de Lenguajes de ProgramaciónExposición de Lenguajes de Programación
Exposición de Lenguajes de Programación
 
Procedimientos almacenados
Procedimientos almacenadosProcedimientos almacenados
Procedimientos almacenados
 
Cuadro comparativo.
Cuadro comparativo.Cuadro comparativo.
Cuadro comparativo.
 
1.3 lenguajes de simulacion y simuladores
1.3 lenguajes de simulacion y simuladores1.3 lenguajes de simulacion y simuladores
1.3 lenguajes de simulacion y simuladores
 
Modelo cascada
Modelo cascadaModelo cascada
Modelo cascada
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Categorías de software de aplicación
Categorías de software de aplicaciónCategorías de software de aplicación
Categorías de software de aplicación
 
Maquinas virtuales
Maquinas virtualesMaquinas virtuales
Maquinas virtuales
 
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
 
Interprete vs compilador
Interprete vs compiladorInterprete vs compilador
Interprete vs compilador
 
Sistema operativo linux
Sistema operativo linuxSistema operativo linux
Sistema operativo linux
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasTópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
 
Programacion Orientada a Eventos
Programacion Orientada a EventosProgramacion Orientada a Eventos
Programacion Orientada a Eventos
 
PARADIGMA IMPERATIVO
PARADIGMA IMPERATIVOPARADIGMA IMPERATIVO
PARADIGMA IMPERATIVO
 
Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)
 
Evolución de la Programación
Evolución de la ProgramaciónEvolución de la Programación
Evolución de la Programación
 
Introduccion a la programacion
Introduccion a la programacionIntroduccion a la programacion
Introduccion a la programacion
 

Destaque

Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretadorFrancisco Leal
 
Compiladores e intérpretes
Compiladores e intérpretesCompiladores e intérpretes
Compiladores e intérpretesfrezko23
 
Estructura de un interprete
Estructura de un interpreteEstructura de un interprete
Estructura de un interpreteperlallamas
 
Introducción a Compiladores
Introducción a  CompiladoresIntroducción a  Compiladores
Introducción a CompiladoresLeopoldo Capa
 
Cuadro comparativo servidores de internet
Cuadro comparativo servidores de internetCuadro comparativo servidores de internet
Cuadro comparativo servidores de internetBorreguito Inolvidable
 
Los compiladores erika y carolina
Los compiladores erika y carolinaLos compiladores erika y carolina
Los compiladores erika y carolinaErika Flores
 
Compiladores diapositivas
Compiladores diapositivasCompiladores diapositivas
Compiladores diapositivasjonathangrief
 
Lenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesLenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesIsrael Castillo Cruz
 
Enlazadores cargadores-by-gadd
Enlazadores cargadores-by-gaddEnlazadores cargadores-by-gadd
Enlazadores cargadores-by-gaddGustavo Davila
 
teoria automatas y lenguajes formales
teoria automatas y lenguajes formalesteoria automatas y lenguajes formales
teoria automatas y lenguajes formalesrusolizs
 
Compiladores
CompiladoresCompiladores
Compiladoresdrakul09
 
Presentación1elena
Presentación1elenaPresentación1elena
Presentación1elenaelena_972
 

Destaque (20)

Clasificacion de Interpretes
Clasificacion de InterpretesClasificacion de Interpretes
Clasificacion de Interpretes
 
Compiladores
CompiladoresCompiladores
Compiladores
 
1.4 ensambladores y compiladores
1.4 ensambladores y compiladores1.4 ensambladores y compiladores
1.4 ensambladores y compiladores
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretador
 
Compiladores e intérpretes
Compiladores e intérpretesCompiladores e intérpretes
Compiladores e intérpretes
 
Estructura de un interprete
Estructura de un interpreteEstructura de un interprete
Estructura de un interprete
 
Compiladores trabajo numero 4
Compiladores trabajo numero 4Compiladores trabajo numero 4
Compiladores trabajo numero 4
 
Introducción a Compiladores
Introducción a  CompiladoresIntroducción a  Compiladores
Introducción a Compiladores
 
Compilador
CompiladorCompilador
Compilador
 
lenguajes de programacion
lenguajes de programacionlenguajes de programacion
lenguajes de programacion
 
Cuadro comparativo servidores de internet
Cuadro comparativo servidores de internetCuadro comparativo servidores de internet
Cuadro comparativo servidores de internet
 
Los compiladores erika y carolina
Los compiladores erika y carolinaLos compiladores erika y carolina
Los compiladores erika y carolina
 
Inf2-exc-1-diego alvarez
Inf2-exc-1-diego alvarezInf2-exc-1-diego alvarez
Inf2-exc-1-diego alvarez
 
Ensambladores
EnsambladoresEnsambladores
Ensambladores
 
Compiladores diapositivas
Compiladores diapositivasCompiladores diapositivas
Compiladores diapositivas
 
Lenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesLenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretes
 
Enlazadores cargadores-by-gadd
Enlazadores cargadores-by-gaddEnlazadores cargadores-by-gadd
Enlazadores cargadores-by-gadd
 
teoria automatas y lenguajes formales
teoria automatas y lenguajes formalesteoria automatas y lenguajes formales
teoria automatas y lenguajes formales
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Presentación1elena
Presentación1elenaPresentación1elena
Presentación1elena
 

Semelhante a Teorías autómatas evolución compiladores

Diapositivas de compiladores
Diapositivas de compiladoresDiapositivas de compiladores
Diapositivas de compiladoresHCL Technologies
 
C1 intro java
C1 intro javaC1 intro java
C1 intro javaalenco
 
Lenguajes de programacion
Lenguajes de programacion Lenguajes de programacion
Lenguajes de programacion juanjokobrax
 
Clase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosClase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosInfomania pro
 
Procesadores de Lenguajes
Procesadores de LenguajesProcesadores de Lenguajes
Procesadores de LenguajesGLORIABELEN3
 
Conceptos de Plataforma.Net
Conceptos de Plataforma.NetConceptos de Plataforma.Net
Conceptos de Plataforma.NetJesús R. Tineo
 
Aprendiendo Java SCF
Aprendiendo Java SCFAprendiendo Java SCF
Aprendiendo Java SCFmikaelsorai
 
Republica bolivariana de venezuela 2
Republica bolivariana de venezuela 2Republica bolivariana de venezuela 2
Republica bolivariana de venezuela 2cristian Salazar L
 
Introducción a la programación visual
Introducción a la programación visualIntroducción a la programación visual
Introducción a la programación visualmiguelangelvillelli
 
Apuntes ejercicios programacion i
Apuntes ejercicios programacion iApuntes ejercicios programacion i
Apuntes ejercicios programacion iRicardo Ramos
 
Innovaciones realizadas a los programas
Innovaciones realizadas a los programasInnovaciones realizadas a los programas
Innovaciones realizadas a los programasCahydeSwaan
 
Hack x crack_java
Hack x crack_javaHack x crack_java
Hack x crack_javaSaviotec
 

Semelhante a Teorías autómatas evolución compiladores (20)

Diapositivas de compiladores
Diapositivas de compiladoresDiapositivas de compiladores
Diapositivas de compiladores
 
Presentación1
Presentación1Presentación1
Presentación1
 
Presentación1
Presentación1Presentación1
Presentación1
 
Lenguajes formales
Lenguajes formalesLenguajes formales
Lenguajes formales
 
C1 intro java
C1 intro javaC1 intro java
C1 intro java
 
Lenguaje Java
Lenguaje JavaLenguaje Java
Lenguaje Java
 
Lenguajes de programacion
Lenguajes de programacion Lenguajes de programacion
Lenguajes de programacion
 
Clase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosClase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptos
 
H:\compiladores
H:\compiladoresH:\compiladores
H:\compiladores
 
Procesadores de Lenguajes
Procesadores de LenguajesProcesadores de Lenguajes
Procesadores de Lenguajes
 
Conceptos de Plataforma.Net
Conceptos de Plataforma.NetConceptos de Plataforma.Net
Conceptos de Plataforma.Net
 
Aprendiendo Java SCF
Aprendiendo Java SCFAprendiendo Java SCF
Aprendiendo Java SCF
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Bison y flex
Bison y flexBison y flex
Bison y flex
 
Jin Unidad6
Jin Unidad6Jin Unidad6
Jin Unidad6
 
Republica bolivariana de venezuela 2
Republica bolivariana de venezuela 2Republica bolivariana de venezuela 2
Republica bolivariana de venezuela 2
 
Introducción a la programación visual
Introducción a la programación visualIntroducción a la programación visual
Introducción a la programación visual
 
Apuntes ejercicios programacion i
Apuntes ejercicios programacion iApuntes ejercicios programacion i
Apuntes ejercicios programacion i
 
Innovaciones realizadas a los programas
Innovaciones realizadas a los programasInnovaciones realizadas a los programas
Innovaciones realizadas a los programas
 
Hack x crack_java
Hack x crack_javaHack x crack_java
Hack x crack_java
 

Último

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
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzzAlexandergo5
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificialcynserafini89
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
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
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 

Último (20)

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
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzz
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificial
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
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
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 

Teorías autómatas evolución compiladores

  • 1. Teorías autómatas y Lenguajes formales Docente: Ing. Iver Claros Ascui Santa Cruz - Bolivia
  • 2. EVOLUCIÓN DE LOS COMPILADORES
  • 3.
  • 4. COMPILADOR Here comes your footer  Page Un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa equivalente que la máquina será capaz de interpretar. El segundo lenguaje es lenguaje de máquina, pero también puede ser simplemente texto. Este proceso de traducción se conoce como compilación. Un compilador es un programa que permite traducir el código fuente de un programa en lenguaje de alto nivel
  • 5. HISTORIA Here comes your footer  Page En 1946 se desarrolló la primera computadora digital. En un principio, estas máquinas ejecutaban instrucciones consistentes en códigos numéricos que señalaban a los circuitos de la máquina los estados correspondientes a cada operación, lo que se denominó lenguaje máquina . 1946 la computadora digital. En un principio, estas máquinas ejecutaban instrucciones consistentes en códigos numéricos, a cada operación, lo que se denominó lenguaje máquina .
  • 6. Here comes your footer  Page Pronto los primeros usuarios de estos ordenadores descubrieron la ventaja de escribir sus programas mediante claves más fáciles de recordar que esos códigos; al final, todas esas claves juntas se traducían manualmente a lenguaje máquina. Estas claves constituyen los llamados lenguajes ensambladores. Los trabajos de investigación se orientaron hacia la creación de un lenguaje que expresara las distintas acciones a realizar de una manera lo más sencilla posible para una persona.
  • 7. Here comes your footer  Page El primer compilador fue escrito por Grace Hopper, en 1952 para el lenguaje de programación A-0, En 1950 John Backus dirigió una investigación en IBM sobre un lenguaje algebraico. En 1954 se empezó a desarrollar un lenguaje que permitía escribir fórmulas matemáticas de manera traducible por un ordenador; le llamaron FORTRAN (FORmulae TRANslator). Fue el primer lenguaje de alto nivel y se introdujo en 1957 para el uso de la computadora IBM modelo 704.
  • 8. TIPOS DE COMPILADORES Here comes your footer  Page Compiladores cruzados : generan código para un sistema distinto del que están funcionando. Compiladores optimizadores : realizan cambios en el código para mejorar su eficiencia, pero manteniendo la funcionalidad del programa original. Compiladores de una sola pasada : generan el código máquina a partir de una única lectura del código fuente. Compiladores de varias pasadas : necesitan leer el código fuente varias veces antes de poder producir el código máquina. Compiladores JIT (Just In Time): forman parte de un intérprete y compilan partes del código según se necesitan.
  • 9. CARACTERÍSTICAS DE UN COMPILADOR Here comes your footer  Page Front End: parte que analiza el código fuente, comprueba su validez, genera el árbol de derivación y rellena los valores de la tabla de símbolos. Parte que suele ser independiente de la plataforma o sistema operativo para el que funcionará. Back End: parte en donde se genera el código máquina exclusivo para una plataforma a partir de lo analizado en el front end.
  • 11. Here comes your footer  Page El lenguaje de programación Java , fue diseñado por la compañía Sun Microsystems Inc, con el propósito de crear un lenguaje que pudiera funcionar en redes computacionales heterogéneas ( redes de computadoras formadas por más de un tipo de computadora, ya sean PC, MAC's, estaciones de trabajo , etc.),y que fuera independiente de la plataforma en la que se vaya a ejecutar. Esto significa que un programa de Java puede ejecutarse en cualquier máquina o plataforma.
  • 12.
  • 13. Here comes your footer  Page Gestión de memoria: Ya no se puede gestionar la memoria de forma tan directa como en C, (no hay malloc). En cambio, se instancian objetos, no se reserva memoria directamente con la memoria y con el SO. Control de métodos y variables de clases: Las variables y los métodos declarados privados sólo son accesibles por la clase o subclases herederas de ella y los declarados como protegidos, sólo por la clase
  • 14. Here comes your footer  Page Métodos y clases final: Las clases y los métodos (e incluso los datos miembro) declarados como final no pueden ser modificados o sobrescritos. Una clase declarada final no puede ser ni siquiera extendida. Recogida de basura: El programador ya no libera la memoria manualmente mediante free. El recogedor de basura de Java se encarga de reclamar la memoria usada por un objeto una vez que éste ya no es accesible o desaparece.
  • 15. Here comes your footer  Page VERIFICADOR DE CÓDIGOS DE BYTES permite ejecutar código de bytes de programas Java válidos, buscando intentos de: Fabricar punteros Ejecutar instrucciones en código nativo Llamar a métodos con parámetros no válidos Usar variables antes de inicializarlas
  • 16. Here comes your footer  Page El verificador efectúa cuatro pasadas sobre cada fichero de clase: En la primera , se valida el formato del fichero. En la segunda , se comprueba que no se instancien subclases de clases final. En la tercera , se verifica el código de bytes: la pila, registros, argumentos de métodos, opcodes. En la cuarta , se finaliza el proceso de verificación, realizándose los últimos tests.
  • 17. Here comes your footer  Page EL MODELO DE LAS CUATRO CAPAS Este modelo se implementa mediante la construcción de cuatro barreras o líneas de defensa: Primera línea de defensa : Características del lenguaje/compilador Segunda línea de defensa: Verificador de código de bytes Tercera línea de defensa : Cargador de clases Cuarta línea de defensa : Gestor de Seguridad
  • 19. Here comes your footer  Page COMPILADORES C SHARP Es un lenguaje de programación orientado a objetos desarrollado y estandarizado por Microsoft como parte de su plataforma .NET . Esta es una interfaz de programación de aplicaciones ( API ), mientras que C ♯ es un lenguaje de programación independiente diseñado para generar programas sobre dicha plataforma.
  • 20.
  • 21.
  • 22.
  • 24. Here comes your footer  Page Windows Internet Explorer (anteriormente Microsoft Internet Explorer; abreviado MSIE), conocido comúnmente como IE, es un navegador web desarrollado por Microsoft para el sistema operativo Microsoft Windows desde 1995 . Posteriormente se introduciría gratuitamente en determinadas versiones OEM de Windows 95, y además se incluyó de forma predeterminada en versiones posteriores de Windows.
  • 25. Here comes your footer  Page CARACTERÍSTICAS Internet Explorer ha sido diseñado para una amplia gama de páginas web y para proporcionar determinadas funciones dentro de los sistemas operativos , incluyendo Windows Update . Internet Explorer, utilizando el motor de diseño Trident , casi en su totalidad soporta HTML 4.01, CSS 1.0 y XML 1, con pequeñas lagunas de contenido. Soporta parcialmente CSS nivel 2 y DOM Nivel 2, con importantes deficiencias en el contenido y cuestiones de conformidad.
  • 26. Here comes your footer  Page Es totalmente compatible con XSLT 1.0, así como un dialecto de XSLT obsoleto creado por Microsoft al que se refiere a menudo como WD-XSL. Está proyectado soporte para XSLT 2.0 para versiones futuras. Internet Explorer ha sido objeto de críticas por su limitado apoyo a estándares web abiertos y un objetivo de mayor importancia de Internet Explorer 8 , es mejorar el apoyo a las normas ya dichas.
  • 27. Here comes your footer  Page USABILIDAD Y ACCESIBILIDAD Internet Explorer hace uso de la accesibilidad prevista en Windows. Internet Explorer también es una interfaz de usuario de FTP , con operaciones similares a las del Explorador de Windows (aunque ésta característica requiere una ventana que se abre en las últimas versiones del navegador, en lugar de forma nativa en el navegador).
  • 28. Here comes your footer  Page VULNERABILIDADES DE SEGURIDAD Internet Explorer ha sido objeto de muchas vulnerabilidades de seguridad y preocupaciones: la mayor parte de spyware , adware , y virus informáticos se transmite través de Internet por la explotación de los fallos y defectos en la arquitectura de seguridad. Una amplia serie de fallos de seguridad que afectan a IE no se originan en el navegador en sí, sino en los ActiveX utilizados por éste.
  • 29. Here comes your footer  Page ELIMINACIÓN La idea de la eliminación de Internet Explorer se propuso durante la batalla entre Estados Unidos y Microsoft . Los críticos consideraron que los usuarios deberían tener el derecho de desinstalar Internet Explorer libremente como cualquier otro software o aplicación . Uno de los argumentos de Microsoft durante el juicio fue que la eliminación de Internet Explorer en Windows puede dar lugar a una inestabilidad del sistema.
  • 31. Here comes your footer  Page Es un navegador web libre y de código abierto , descendiente de Mozilla Application Suite y actualmente desarrollado por la Corporación Mozilla , la Fundación Mozilla y un gran número de voluntarios externos. Firefox es el segundo navegador más utilizado de Internet, con una cuota de mercado del 22,96% a finales de septiembre de 2010, según la firma Net Applications . Otras fuentes de medición global sitúan el uso de Firefox entre el 21% y el 32%.
  • 32. Here comes your footer  Page Incluye navegación por pestañas , corrector ortográfico , búsqueda progresiva, marcadores dinámicos, un administrador de descargas , navegación privada , navegación con georreferenciación y un sistema de búsqueda integrado que utiliza el motor de búsqueda que desee el usuario. Además se pueden añadir funciones a través de complementos desarrollados por terceros, entre los que hay una amplia selección, característica que ha atraído a muchos de los usuarios actuales del navegador. CARACTERISTICAS
  • 33. Here comes your footer  Page Firefox es un navegador multiplataforma y está disponible en varias versiones de Microsoft Windows , Mac OS X , GNU/Linux y algunos sistemas basados en Unix . Su código fuente es software libre , publicado bajo una triple licencia GPL / LGPL / MPL . COMPATIBILIDAD CON ESTÁNDARES WEB Es compatible con varios estándares web, incluidos HTML , XML , XHTML , SVG 1.1 (parcial), CSS 1, 2 y 3, [] ECMAScript ( JavaScript ), DOM , MathML , DTD , XSLT , XPath , e imágenes PNG con transparencia alfa .
  • 34. Here comes your footer  Page
  • 35. Here comes your footer  Page SEGURIDAD Firefox usa un sistema de seguridad sandbox . [] Utiliza el sistema SSL/TLS para proteger la comunicación con los servidores web, utilizando fuerte criptografía cuando se utiliza el protocolo Https . Cuenta con una protección antiphishing, antimalware e integración con el antivirus. También y como medida prudencial que ha causado controversia, Firefox no incluye compatibilidad alguna con los sistemas ActiveX
  • 36. Here comes your footer  Page BUSCADOR Firefox incluye de serie un buscador integrado en la interfaz que hace búsquedas en Google y en otros buscadores localizados para el idioma de la traducción. También permite la opción de añadir buscadores de la base de datos online de Mycroft. GESTOR DE DESCARGAS Se incluye también con el paquete oficial, un sistema de gestión de descargas que permite descargar numerosos archivos simultáneamente y abrirlos una vez han finalizado y pausarlos para descargas de archivos grandes.
  • 37. Here comes your footer  Page