Skip to content

This repository contains the code for the project of the Compiler Design course taught by Dr.Gholamreza Sani in the Fall semester of 2021 at Sharif University of Technology

Notifications You must be signed in to change notification settings

theablemo/Compiler_CMinus

Repository files navigation

C-minus Compiler

In this project, we created a one-pass compiler for the C-minus programming language. C-minus is a simplified version of the C programming language.

Collaborators:

Phases

This project was divided into 3 phases:

Phase 1

In this phase, we developed the scanner for our compiler. The scanner takes care of tokenization of the program given to it. The documentation of this phase can be found here. This documentation also contains the token types recognized by the C-minus language.

Phase 2

In this phase, we made the parser for our compiler. By identifying the C-minus grammar, the compiler can generate the program's parse tree, and detect potential grammatical errors. The documentation of this phase can be found here. This documentation contains the Context-Free grammar of C-minus.

Phase 3

In this phase, we went on to make the intermediate code generator of our compiler. The development kicked off by first generating the augmented grammar of C-minus. The documentation of this phase can be found here. This documentation also contains the three-address codes generated by the intermediate code generator.

About

This repository contains the code for the project of the Compiler Design course taught by Dr.Gholamreza Sani in the Fall semester of 2021 at Sharif University of Technology

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages