A compiler translates the code written in one language (like c) to some other language (like machine language) without changing the meaning of the program. It is also expected that a compiler should make the target code efficient and optimize in terms of time and space.
This tutorial app is very useful to understand the theory and practice of compiler implementation. This tutorial includes theories of compiler design as Lexical Analysis, Syntax Analysis, Semantic Analysis, Intermediate Code Generation, Code Optimization, and Code Generation. A description of all the phases is given in the presentation form.
This tutorial is designed for those students who are interested in learning and understand the basic principles of the compiler. Also helpful for those to interested in design a compiler. Each phase easily describes with examples.
This tutorial requires some basic knowledge of programming language like c, java etc.
Features:
1. Topic/chapter wise lesson.
2. Subtopics wise lesson of each topic.
3. Also includes the youtube videos links prepared by me.
4. Question Bank.
5. Complete Offline notes in slid.
Topics:
1. Compiler Design: Introduction
2. Bootstrapping
3. Lexical Analysis: Regular Expression, Thompson Construction
4. Syntax Analysis: Top-down and Bottom-up Parsing
5. Top-down Parsing: Predictive Parsing (LL Parsing)
6. Bottom-up Parsing: Simple LR(SLR), Look Ahead LR(LALR)
7. Semantic Analysis
8. Intermediate Code Generation: Three-Address Code
9. Code Optimization: Basic Blocks
10. Code Generation: Algorithm, getreg() function
Un compilateur traduit le code écrit dans une langue (comme c) en une autre langue (comme le langage machine) sans changer la signification du programme. Il est également prévu qu'un compilateur rende le code cible efficace et optimise en termes de temps et d'espace.
Cette application tutorielle est très utile pour comprendre la théorie et la pratique de la mise en œuvre du compilateur. Ce didacticiel comprend des théories sur la conception de compilateurs telles que l'analyse lexicale, l'analyse syntaxique, l'analyse sémantique, la génération de code intermédiaire, l'optimisation de code et la génération de code. Une description de toutes les phases est donnée dans le formulaire de présentation.
Ce didacticiel est conçu pour les étudiants qui souhaitent apprendre et comprendre les principes de base du compilateur. Aussi utile pour ceux qui s'intéressent à la conception d'un compilateur. Chaque phase décrit facilement avec des exemples.
Ce tutoriel nécessite une connaissance de base du langage de programmation comme c, java etc.
Fonctionnalités:
1. Leçon sage sujet / chapitre.
2. Leçon sage des sujets secondaires de chaque sujet.
3. Comprend également les liens de vidéos youtube préparés par moi.
4. Banque de questions.
5. Complétez les notes hors ligne en glissant.
Les sujets:
1. Conception du compilateur: introduction
2. Bootstrapping
3. Analyse lexicale: expression régulière, Thompson Construction
4. Analyse syntaxique: analyse descendante et ascendante
5. Analyse descendante: analyse prédictive (analyse LL)
6. Analyse ascendante: LR simple (SLR), Look Ahead LR (LALR)
7. Analyse sémantique
8. Génération de code intermédiaire: code à trois adresses
9. Optimisation du code: blocs de base
10. Génération de code: algorithme, fonction getreg ()