tailieunhanh - Bài giảng Principles of compilers - Bài 1: Giới thiệu về chương trình dịch

Nội dung bài giảng Bài 1: Giới thiệu về chương trình dịch được chia thành 5 phần trình bày về: Khái niệm về compiler, vị trí của compiler trong LPS, các giai đoạn làm việc của compiler, vấn đề quản lý bảng ký tự, xử lý lỗi biên dịch. . | Principles of compilers GIẢNG VIÊN: TS. HÀ CHÍ TRUNG BỘ MÔN: KHMT KHOA CNTT, HVKTQS ĐT: EMAIL: HCT2009@ ©TS. Hà Chí Trung, Khoa CNTT - HVKTQS 1 15-05-12 Giới thiệu chung Cơ sở môn Chương trình dịch: Lý thuyết automata và ngôn ngữ hình thức; Cấu trúc dữ liệu và giải thuật; Lập trình (C, C#.) Tiêu chuẩn đánh giá sinh viên: Báo cáo đề tài; Chuyên cần, thường xuyên, thi hết môn; ©TS. Hà Chí Trung, Khoa CNTT - HVKTQS 2 15-05-12 Giới thiệu chung Tài liệu tham khảo: 1. Bài giảng của giảng viên; 2. . Aho, M. Lam, R. Sethi, . Compilers: Principles, Technique and Tools, 2nd Edition – Addison-Wesley, 2007. 3. . Appel. Modern Compiler Implementation in C – Cambrige University Press, 2004. 4. S. Muchnick. Advanced Compiler Design and Implementation. Morgan-Kaufmann Publishers, 2007. 5. K. Cooper, L. Torczon. Engineering a Compiler. - MorganKaufman Publishers, 2005. 6. Phạm Hồng Nguyên. Giáo trình chương trình dịch 2nd Edition, NXB ĐHQG Hà Nội, 2009. ©TS. Hà Chí Trung, Khoa CNTT - HVKTQS 3 15-05-12 Bài 1. Giới thiệu về chương trình dịch . Khái niệm về compiler . Vị trí của compiler trong LPS . Các giai đoạn làm việc của compiler . Phân tích từ vựng (lexical analysis) . Phân tích cú pháp (syntax analysis) . Phân tích ngữ nghĩa (semantic analysis) . Sinh mã trung gian (ICG) . Tối ưu mã (code optimition) . Sinh mã đích (code generation) . Vấn đề quản lý bảng ký tự . Xử lý lỗi biên dịch ©TS. Hà Chí Trung, Khoa CNTT - HVKTQS 4 15-05-12 Bài 1. Giới thiệu về chương trình dịch . Khái niệm về compiler . Vị trí của compiler trong LPS . Các giai đoạn làm việc của compiler . Phân tích từ vựng (lexical analysis) . Phân tích cú pháp (syntax analysis) . Phân tích ngữ nghĩa (semantic analysis) . Sinh mã trung gian (ICG) . Tối ưu mã (code optimition) . Sinh mã đích (code generation) . Vấn đề quản lý bảng ký tự . Xử lý lỗi biên .