Understanding Compiler Principles and Tools

compiler principles n.w
1 / 7
Embed
Share

Explore the fundamentals of compilers through Compiler Principles, comprehensive literature, and less frequent use cases. Learn what compilers are, their phases, and construction tools used in program translation. Dive into scanner and parser generators, automatic code generators, and more.

  • Compiler Principles
  • Compilation Tools
  • Programming Languages
  • Compiler Construction
  • Software Development

Uploaded on | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. Compiler principles Jakub Yaghob David Bedn rek

  2. Literature and slides Compilers - Principles, Techniques and Tools The Dragon Book Aho, Sethi, Ullman; Addison-Wesley 1986 Aho, Lam, Sethi, Ullman; Addison-Wesley 2006 Introduction to Compilers and Language Design Thain D; 2020, U. Notre Dame https://www3.nd.edu/~dthain/compilerbook/ Advanced compiler design and implementation Muchnick SS; Morgan Kaufman 1997 Slides https://www.ksi.mff.cuni.cz/teaching/nswi098-web/

  3. What is a compiler? Na ve concept A black-box compiling a source code to a target code Target code Source code Compiler Error messages

  4. Less frequent use cases Structured or syntax-highlighting editor Pretty-printer Static program checker LINT Interpreters, JIT Circuit design (aka. logic synthesis) Verilog, VHDL, System-C Query languages SQL

  5. Program translation Interface Source code Preprocessor .pp Compiler .asm Libraries Objects Executable code Linker/Loader .obj Assembler

  6. Phases of a compiler Tables back end front end Intermediate Intermediate generation Semantic code gen code opt analysis analysis analysis Lexical Syntax Source code Target code Code Syntax-directed translation Error handling Compiler passes

  7. Compiler-construction tools Scanner generators Produce lexical analyzers Usually description based on regular expressions Flex Parser generators Produce syntax analyzers Usually description based on a context-free grammar Bison, Coco/R, ANTLR Automatic code generators Produce translations for each intermediate code instructions to the target code A processor model and description

More Related Content