• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Compiladores
 

Compiladores

on

  • 5,694 views

teorias automatas y lenguajes formales; subido por Belarmino y Deysi

teorias automatas y lenguajes formales; subido por Belarmino y Deysi

Statistics

Views

Total Views
5,694
Views on SlideShare
5,694
Embed Views
0

Actions

Likes
0
Downloads
122
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Compiladores Compiladores Presentation Transcript

    • 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
      • Evolución de los compiladores
      • Compiladores de Java
      • Compiladores de C#
      • Características de internet Explorer
      • Características de Mozilla
    • 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
      • Evitar errores de memoria
      • Imposibilitar acceso al SO
      • Evitar que caiga la máquina sobre la que corre
      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
      • Microsoft.NET framework SDK incluye un compilador de C♯, pero no un IDE .
      • Microsoft Visual Studio , IDE por excelencia de este lenguaje, versión 2002, 2003, 2005, 2008 y 2010.
      • #develop , es un IDE libre para C♯ bajo licencia LGPL , muy similar a Microsoft Visual C#.
      • Mono , es una implementación GPL de todo el entorno .NET desarrollado por Novell . Como parte de esta implementación se incluye un compilador de C♯.
      • Delphi 2006, de Borland Software Corporation.
      • dotGNU Portable.NET , de la Free Software Foundation .
    • Here comes your footer  Page SUS CARACTERISTICAS
      • Un núcleo del lenguaje simple, con funcionalidades añadidas importantes, como funciones matemáticas y de manejo de archivos, proporcionadas por bibliotecas .
      • Es un lenguaje muy flexible que permite programar con múltiples estilos. Uno de los más empleados es el estructurado "no llevado al extremo" (permitiendo ciertas licencias de ruptura).
    • Here comes your footer  Page
      • Un sistema de tipos que impide operaciones sin sentido.
      • Usa un lenguaje de preprocesado , el preprocesador de C , para tareas como definir macros e incluir múltiples archivos de código fuente .
      • Acceso a memoria de bajo nivel mediante el uso de punteros .
      • Interrupciones al procesador con uniones .
      • Un conjunto reducido de palabras clave .
    • 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