Ưu đãi trong tuần: Nhập mã UD50 giảm 50k cho đơn từ 300k!
Trang chủ
Menu

C/C++ Compiler design from scratch

Thiết kế trình biên dịch C/C++ từ đầu

Thiết kế trình biên dịch C/C++ từ đầu

Thiết kế trình biên dịch C++ (dự án có hướng dẫn)

4.5
(45 đánh giá)
402 học viên
Giảng viên
Ezeuko Emmanuel
Phụ đề Việt chất lượng cao Phụ đề tiếng Anh Bán chạy Đánh giá cao
50.000đ 399.000đ -87%
✓ Xem giỏ hàng và thanh toán
Bao gồm phụ đề tiếng Việt, tiếng Anh
5.0 giờ video
30 bài giảng
Truy cập vĩnh viễn
Học trên mọi thiết bị
Cập nhật: 28/05/2026

Bạn sẽ học được gì

Học viên sẽ tìm hiểu token là gì và các loại token khác nhau trong thiết kế trình biên dịch. Học viên cũng sẽ tự tạo danh sách enum token của riêng mình bằng C++
Học viên sẽ thiết kế bộ scanner – công cụ mà trình biên dịch dùng để kiểm tra lỗi và đối sánh token. Bạn sẽ học cách mở một tệp C++ và sao chép nội dung của nó
Học viên sẽ tìm hiểu về parser và tự xây dựng parser của riêng mình để phân tích 20 dạng cú pháp ngôn ngữ khác nhau trong thiết kế trình biên dịch
Bạn sẽ học và thiết kế khối phân tích ngữ nghĩa của trình biên dịch, cũng như cách trình biên dịch hiểu cấu trúc câu. Ngoài ra còn có phần sinh mã

Yêu cầu

Tất cả các cấp độ kiến thức về ngôn ngữ C++ và thiết kế trình biên dịch

Đối tượng phù hợp

Nhà phát triển C++
Thiết kế trình biên dịch

Nội dung khóa học

5 phần • 30 bài giảng
1 0. Tải xuống tệp mã nguồn
2 1. Mở tệp C++
3 2. Token là gì
4 Nhắn tin cho tôi nếu cần trợ giúp
5 3. Quy trình quét (scanning)
6 4. Cách bỏ qua khoảng trắng
7 5. Quét token từ khóa
8 6. Quét token ký tự
9 7. Cách sinh token
10 8. Hàm makeToken
1 Nhắn tin cho tôi nếu cần trợ giúp
2 9. Thiết lập phân tích cú pháp và ngữ nghĩa
3 10. Parser
4 11. Tạo các lớp ngữ nghĩa
5 12. Biên dịch khai báo hàm
6 13. Tài liệu tham khảo hay
7 14. Biên dịch khai báo biến
8 15. Biên dịch lệnh thoát hàm
1 16. Thuật toán biểu thức hậu tố
2 17. Gán thanh ghi cho biến và đọc biểu thức
3 18. Biên dịch biểu thức
4 19. Biên dịch biểu thức OR, AND và phủ định
1 Nhắn tin cho tôi nếu cần trợ giúp
2 20. Biên dịch vòng lặp while và thoát khỏi vòng lặp while
3 21. Biên dịch vòng lặp for
4 22. Biên dịch biểu thức IF, ELSE IF và ELSE
5 23. Biên dịch câu lệnh switch
1 24. Biên dịch lệnh gọi hàm
2 25. Biên dịch toán tử ba ngôi, return, break, continue, label, goto, từ khóa cout
3 26. Tiếp theo là gì?

Giới thiệu khóa học

The course takes a step-by-step practical approach to the design of a C++ compiler. The student starts with learning how to design the lexical analyzer or scanner, followed by the syntax analyzer or parser, then semantic analyzer and the intermediate code generation.

These make up the four major units of the course.All these units are compiled one after another.


The course will also provide a grasps of what tokens are, how they are generated and what they are used for in compiler designs.

. You will design a parser that parses chunks of more than 20 different language constructs we will use in the lesson and also be able to add your own custom language sentence in your own compiler design using c++ or any language of your choice.


The lessons and technique gotten from the course was used in the design of a multi-threaded HTTP web server.


This course is for all levels of C++ developers. who want to advance their programming skill through a project design and for developers who want to learn about compilers and also learn how to design them. we would start from the basic tokens and develop into the more complex compiler design in a step by step manner.

The high level programming language used in this course is the C++ language.

The only tool you will need is a good C++ editor example VsCode, Visual studio etc..

Basic knowledge of C++ is required, our compiled file will be an assembly language code which will consist of a mix of the standard MIPS assembly and RISC-V which you will learn in this course. A lot of course material including the full working compiler script which designs these different units is also attached.

Khóa học liên quan

Khám phá thêm các khoá học cùng chủ đề

Hiển thị tất cả khoá học C Plus Plus
Hiển thị tất cả khoá học Compiler Design
Zalo
Tôi có thể tư vấn khoá học cho bạn 😊