Herramientas 2014

Generación de Código Assembler
Se adjuntan:
  • Instalador de MASM32 (m32v10r.zip)
  • Ejemplo de código con manejo de mensajes por pantalla (asmwhello.rar)
  • Tutorial para Assembler para windows (winasmtut.pdf)
  • Presentación con sintaxis de Assembler (Assembler.pptx)
Material adicional disponible en: http://www.cs.virginia.edu/~evans/cs216/guides/x86.html

Análisis Sintáctico

Se adjuntan algunas herramientas disponibles.

Documentación disponible en: http://dinosaur.compilertools.net/yacc/index.html

A continuación, se presenta una lista de generadores de parsers con sus características más importantes, y vínculos a páginas donde se puede encontrar documentación y acceso a las herramientas.  

Fuente: http://www.escet.urjc.es/~procesal/analizadores.html


Generadores de analizadores sintácticos (parser generators)


BYacc

Tipo de analizador: Ascendente, LALR(1).

Código generado: C.


Byacc/Java

Tipo de analizador: Ascendente, LALR(1).

Código generado: Java.


Yacc

Tipo de analizador: Ascendente, LALR(1).

Código generado: C, C++.

Características adicionales:

    • Se puede integrar con Lex dejando a éste el análisis léxico.
    • La precedencia se puede definir al margen de la gramática, manteniendo ésta más simple.
    • Conjuntamente con Memphis se puede construir un árbol sintáctico como salida del analizador.

Bison

Tipo de analizador: Ascendente, LALR(1).

Código generado: C, C++.

Características adicionales:

    • Compatible con Yacc: una gramática de entrada para Yacc puede utilizarse en Bison sin ninguna modificación.

YaYacc

Tipo de analizador: Ascendente, LALR(1).

Código generado: C++.

Características adicionales:

    • El generador sólo corre sobre FreeBSD, pero el código generado no está ligado a ninguna plataforma concreta.


GOLD

Tipo de analizador: Ascendente (LALR(1)).

Código generado: Multilenguaje (Java, C#, ANSI C, Delphi, Python, VB, VB .NET, VC++, wxWidgets, todos los lenguajes .NET, todos los lenguajes ActiveX).

Características adicionales:

    • Incluye análisis léxico.
    • El código fuente está disponible también en numerosos lenguajes.

TP Lex/Yacc

Tipo de analizador: Ascendente, LALR(1).

Código generado: Turbo y Borland Pascal, Delphi.


SableCC

Tipo de analizador: LALR(1).

Código generado: Java.

Características adicionales:

    • Es un framework para generar tanto compiladores como intérpretes.
    • Genera además del parser, tree walkers y ASTs (tipados).
    • Analizador léxico basado en DFAs, que soporta unicode.
    • La gramática se especifica en EBNF.

AnaGram

Tipo de analizador: LALR(1).

Código generado: C, C++.


CUP

Tipo de analizador: Ascendente, LALR(1).

Código generado: Java.

Características adicionales:

    • La precedencia puede especificarse al margen de la gramática.
    • La gramática se especifica en notación EBNF.

Beaver

Tipo de analizador: LALR(1).

Código generado: Java.

Características adicionales:

    • EBNF.
    • Necesita un analizador léxico.
Ċ
Marcela Ridao,
7 ago. 2015 12:02
ċ
asmwhello.rar
(1k)
Marcela Ridao,
7 ago. 2015 12:02
ċ
m32v10r.zip
(3854k)
Marcela Ridao,
7 ago. 2015 12:02
Ċ
Marcela Ridao,
7 ago. 2015 12:02
Comments