/freud-compiler

Programski prevodilac "Freud" ("Frojd"), akademski projekat predmeta Programski prevodioci (FTN│RA│3. godina).

Primary LanguageC

Freud Compiler

Autor: Tara Pogančev

Freud_Compiler

Programski prevodilac "Freud" (Frojd) akademski je projekat na Fakultetu tehničkih nauka (smer Računarstvo i automatika), predmeta programski prevodioci.

O kompajleru

Jednostavan komapjler ima ulogu sintaksnu, leksičku i semantičku analizu datog koda pisanom u "Freud" jeziku (ekstenzija .mew). Nakon uspešne analize koda, generiše se .asm datoteka sa prevedenim originalnim kodom na asemblerski jezik. Ovaj kod može se pokrenuti i testirati korišćenjem Hipsim simulatora.

Neke od funkcionalnosti kompajlera podrazumevaju:

• Rad sa int i unsigned vrednostima
• Rad sa funkcijama sa i bez povratne vrednosti (void)
• Osnovne aritmetičke operacije sabiranje i oduzimanje
• Postinkrementni operator
• Jednolinijske i višelinijske komentare
• Globalne promenljive
• Ternarni operator u okviru numeričkih izraza
• PARA iskaz (analogno logici for-statement-a)
• SWITCH - CASE
• DO - UNTIL

Upotreba kompajlera

Pokretanjem make komande, generišu se fajlovi neophodni za pokretanje testova i korišćenje kompajlera i HIPSIM simulatora. Make test pokreće testove uz kratak ispis uspešnosti istih, dok Make det pokreće sve testove, i ispisuje moguće greške, kao i izlaznu vrednost.

make
make test
make det