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
Um compilador converte o código escrito em um idioma (como c) para outro idioma (como linguagem de máquina) sem alterar o significado do programa. Também é esperado que um compilador torne o código de destino eficiente e otimize em termos de tempo e espaço.
Este aplicativo tutorial é muito útil para entender a teoria e a prática da implementação do compilador. Este tutorial inclui teorias do design do compilador como Análise Lexical, Análise de Sintaxe, Análise Semântica, Geração Intermediária de Código, Otimização de Código e Geração de Código. Uma descrição de todas as fases é fornecida no formulário de apresentação.
Este tutorial foi desenvolvido para os alunos que estão interessados em aprender e entender os princípios básicos do compilador. Também é útil para aqueles interessados em projetar um compilador. Cada fase descreve facilmente com exemplos.
Este tutorial requer algum conhecimento básico de linguagem de programação como c, java etc.
Recursos:
1. Tópico / capítulo lição sábia.
2. Subtópicos lição sábia de cada tópico.
3. Também inclui os links de vídeos do youtube preparados por mim.
4. Banco de perguntas.
5. Complete notas off-line no slide.
Tópicos:
1. Design do Compilador: Introdução
2. Bootstrapping
3. Análise Lexical: Expressão Regular, Construção Thompson
4. Análise de sintaxe: análise de cima para baixo e de baixo para cima
5. Análise de cima para baixo: Análise preditiva (análise LL)
6. Análise de baixo para cima: LR simples (SLR), LR antecipado (LALR)
7. Análise Semântica
8. Geração intermediária de código: código de três endereços
9. Otimização de código: blocos básicos
10. Geração de Código: Algoritmo, função getreg ()