Překladač vyššího programovacího jazyka

Title Alternative:Programming language compiler
Loading...
Thumbnail Image
Date
2012
Journal Title
Journal ISSN
Volume Title
Publisher
Technická Univerzita v Liberci
Abstract
Následující text obsahuje kompletní dokumentaci k překladači TulToAsm51, včetně vysvětlení všech principů a pravidel jazyka TUL - Temporary Universal Language navrženého s ohledem na dobré zkušenosti s jednoduchým programováním v jazycích Pascal a Matlab. TulToAsm51 zpracovává složky se vstupními soubory *.tul s obsahem odpovídajícím pravidlům gramatiky jazyka TUL uvedeným v kapitole TUL kód. Rozliší v něm všechny známé symboly, z těch nechá vyrůst derivační strom a ten poté převádí do kódování Assembleru 8051 včetně přiřazení fyzických adres všem proměnným. Vygenerovaný soubor *.asm lze použít s jakýmkoli softwarem na linkování a nahrávání *.asm souborů do libovolného PLC s procesorem Intel MCS-51. Překladač je vystavěn na platformě Java jako přenositelný mezi operačními systémy Linux a Windows (teoreticky i OS-X a Android). Jedná se o konzolovou aplikaci bez požadavku na uživatelský vstup, která se snadno implementuje do univerzálních vývojových prostředí jako Geany (pro Linux) či PS-Pad (pro Windows). Tato práce vychází z poznatků zaznamenaných v předcházejícím bakalářském projektu Teorie tvorby překladačů vyšších programovacích jazyků. Vývoj kvalitního překladače však obnáší kromě důkladné teoretické přípravy i dlouhá léta pečlivého ladění, tudíž dveře k úpravám a doplnění chybějících funkcí zůstávají otevřeny.
Following text contains the complete documentation of TulToAsm51 compiler, including definitions of all TUL - Temporary Universal Language - principles and rules. This language refers to good experiences with easy programming in Pascal and Matlab. TulToAsm51 can run with *.tul input files containing code according to TUL grammar rules caught by chapter TUL coding. It recognizes all known symbols and lets a derivation tree grow up from them. This tree is then compiled to Assembler 8051 language including variables' physical addresses assignment. Generated *.asm file can be used with any linking and loading software for PLCs based on Intel MCS-51 processor. This compiler is build on Java platform and so it is portable between operation systems Linux and Windows (probably even OS-X and Android). TulToAsm is designed as a console application without any run-time user input requirement, so it is easy to implement it in some of universal IDEs like Geany (for Linux) or PS-Pad (for Windows) This thesis is based on the insights captured in foregoing bachelor project Theory of higher programming language parser. However, high quality compiler development requires a very long time for testing and debugging, so the door to any reconstructions or adding missing functions are still opened.
Description
katedra: MTI; přílohy: CD-ROM; rozsah: 34 s
Subject(s)
scanner, parser, compiler, lexikální analýza, syntaktická analýza, symbol (terminál), neterminál, derivační strom, výraz, pin, port, 8051 (x51, 51), scanner, parser, compiler, lexical analysis, syntactic analysis, symbol (terminal), non - terminal, derivation tree, expression, pin, port, 8051 (x51, 51)
Citation
ISSN
ISBN