Compiler Construction
Code | Completion | Credits | Range | Language |
---|---|---|---|---|
BI-CCN | Z,ZK | 5 | 3P | English |
- Course guarantor:
- Lecturer:
- Tutor:
- Supervisor:
- Department of Theoretical Computer Science
- Synopsis:
-
This is an introductory class on compiler construction for bachelor students in computer science. The goal of the class is to introduce basic principles of compilers for students to understand the design and implementation of programming languages. Seeing and actually understanding self-compilation is the overarching theme of the class.
- Requirements:
-
Basic programming skills.
- Syllabus of lectures:
-
Selfie
Language
Programming Language
Machine Code
Formal Grammar
Machine
Model
Processor
Memory
Input/Output
Instructions
Emulation
Compiler
Scanning
Parsing
Code Generation
Operators
Arrays
Structs
Loops
Conditionals
Procedures
Linking
Bootstrapping
- Syllabus of tutorials:
- Study Objective:
-
After taking the class, students are able to understand the difference between syntax and semantics of a programming language, how syntax is specified and efficiently checked, how semantics is efficiently implemented through code generation, and finally how a compiler that compiles itself is bootstrapped.
- Study materials:
- Note:
- Further information:
- https://courses.fit.cvut.cz/BIE-CCN/
- No time-table has been prepared for this course
- The course is a part of the following study plans:
-
- Bachelor Specialization Information Security, in Czech, 2021 (elective course)
- Bachelor Specialization Management Informatics, in Czech, 2021 (elective course)
- Bachelor Specialization Computer Graphics, in Czech, 2021 (elective course)
- Bachelor Specialization Computer Engineering, in Czech, 2021 (elective course)
- Bachelor program, unspecified specialization, in Czech, 2021 (elective course)
- Bachelor Specialization Web Engineering, in Czech, 2021 (elective course)
- Bachelor Specialization Artificial Intelligence, in Czech, 2021 (elective course)
- Bachelor Specialization Computer Science, in Czech, 2021 (elective course)
- Bachelor Specialization Software Engineering, in Czech, 2021 (elective course)
- Bachelor Specialization Computer Systems and Virtualization, in Czech, 2021 (elective course)
- Bachelor Specialization Computer Networks and Internet, in Czech, 2021 (elective course)
- Study plan for Ukrainian refugees (elective course)
- Bachelor Specialization Information Security, in Czech, 2024 (elective course)
- Bachelor program, unspecified specialization, in Czech, 2024 (elective course)
- Bachelor Specialization Management Informatics, in Czech, 2024 (elective course)
- Bachelor Specialization Computer Graphics, in Czech, 2024 (elective course)
- Bachelor Specialization Software Engineering, in Czech, 2024 (elective course)
- Bachelor Specialization Web Engineering, in Czech, 2024 (elective course)
- Bachelor Specialization Computer Networks and Internet, in Czech, 2024 (elective course)
- Bachelor Specialization Computer Engineering, in Czech, 2024 (elective course)
- Bachelor Specialization Computer Systems and Virtualization, in Czech, 2024 (elective course)
- Bachelor Specialization Artificial Intelligence, in Czech, 2024 (elective course)
- Bachelor Specialization Computer Science, in Czech, 20214 (elective course)
- Bc. specialization Computer Graphics with omitting BI-SVZ (elective course)