dc.contributor.author |
Πλεύρης, Άγγελος
|
el |
dc.contributor.author |
Plevris, Angelos
|
en |
dc.date.accessioned |
2022-10-25T07:09:57Z |
|
dc.date.available |
2022-10-25T07:09:57Z |
|
dc.identifier.uri |
https://dspace.lib.ntua.gr/xmlui/handle/123456789/55987 |
|
dc.identifier.uri |
http://dx.doi.org/10.26240/heal.ntua.23685 |
|
dc.rights |
Default License |
|
dc.subject |
Μεταγλωττιστές |
el |
dc.subject |
Γλώσσες Προγραμματισμού |
el |
dc.subject |
Ενσωματωμένα συστήματα |
el |
dc.subject |
Επικοινωνούσες Ακολουθιακές Διεργασίες |
el |
dc.subject |
LLVM |
en |
dc.subject |
Compilers |
en |
dc.subject |
Programming Languages |
en |
dc.subject |
Embedded systems |
en |
dc.subject |
CSP |
en |
dc.title |
Compiler Backend Implementation for Noisy |
en |
heal.type |
bachelorThesis |
|
heal.classification |
Compilers |
en |
heal.classification |
Embedded Systems |
|
heal.classification |
Languages |
|
heal.language |
en |
|
heal.access |
free |
|
heal.recordProvider |
ntua |
el |
heal.publicationDate |
2022-05-06 |
|
heal.abstract |
With this diploma thesis we develop a compiler backend for a subset of the programming
language Noisy. Noisy is a new high level programming language designed for embedded
systems and real-time computing platforms. Noisy aims to provide embedded systems
designers and users with a new set of tools to simplify and also boost their work. Our
current work implements the basic computational core of Noisy and should act as a solid
foundation for the further development of this language. In this thesis we used the already
implemented lexer and parser of Noisy and we created a semantic analyzer as well as a
code generator. For the code generation we used the LLVM toolchain which enables us to
generate assembly code for many different target architectures. Also, since Noisy aims to
implement the CSP (Communicating sequential processes) model, we experimented on its
implementation using the LLVM’s coroutines. Finally, we wrote and tested a variety of
programs in Noisy in order to evaluate and measure our compiler’s performance as well as
the performance of generated code. |
en |
heal.advisorName |
Σούντρης, Δημήτριος
|
el |
heal.advisorName |
Soudris, Dimitrios |
el |
heal.committeeMemberName |
Σούντρης, Δημήτριος
|
|
heal.committeeMemberName |
Ξύδης, Σωτήριος
|
el |
heal.committeeMemberName |
Τσανάκας, Παναγιώτης
|
el |
heal.academicPublisher |
Εθνικό Μετσόβιο Πολυτεχνείο. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών |
el |
heal.academicPublisherID |
ntua |
|
heal.fullTextAvailability |
false |
|