Alkhioz / PeachCompiler

A C compiler created for the how to create a C Compiler online course

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Creating a C Compiler from Scratch: A Comprehensive Course

Course Discount

Ever wondered how to build a C compiler from scratch? This course teaches you just that! By the end of this course, you'll be able to develop a compiler that can compile a subset of the C Programming Language. This compiler will be advanced enough to use the GCC standard library and will feature a preprocessor macro system just like any other C compiler.

👉 Get the course at a discount!

Table of Contents

  1. About the Course
  2. Modules
  3. Requirements
  4. Who This Course is For
  5. What You Will Learn

About the Course

This is a comprehensive course that teaches you how to build your very own C compiler. The course covers a wide range of topics, including:

  • Pointers
  • Structures
  • Unions
  • Arrays
  • Functions
  • Loop Constructs
  • Conditional Statements
  • And much more!

Moreover, we'll also dive deep into the preprocessor system, allowing you to include header files and create definitions just like you would in any C file. We'll be building everything from scratch, without relying on any frameworks, to provide you with the best learning experience.

Modules

Module 1

In the first module, you'll learn how to load a C source file into memory. We'll build a lexer to perform lexical analysis and convert the source code into tokens. These tokens will then be passed through a parser to produce an Abstract Syntax Tree (AST).

Module 2

In the second module, you'll learn how to create a code generator that outputs 32-bit Intel assembly language. This assembly code can then be compiled to produce a binary executable. This module also introduces the concept of a resolver system to simplify complex expressions.

Module 3

Module three focuses on creating a preprocessor and macro system. This will enable you to include header files in your C programs and utilize macro keywords like #define, #ifdef, sizeof, etc.

Module 4

In the final module, we'll build a semantic validator. This will ensure that the code adheres to the rules of C language, like variable declaration and structure access.

Requirements

  • Basic experience with assembly language.

Who This Course is For

  • People interested in compiler design.
  • Individuals with a keen interest in assembly language.
  • Anyone who wants to deepen their understanding of the C programming language.

What You Will Learn

  • Building a C compiler from scratch.
  • A full understanding of stack frames and how assembly language is generated from a C source file.
  • Complete understanding of lexical analysis and parsing.
  • How to work with Assembly language more efficiently.
  • Compiler design fundamentals.

Enroll Now!

👉 Get the course at a discount!

Don't miss this chance to become an expert in compiler design and C programming. Enroll today!

About

A C compiler created for the how to create a C Compiler online course

License:GNU General Public License v2.0


Languages

Language:C 99.2%Language:Makefile 0.8%