Tham khảo tài liệu 'giới thiệu về sự biên dịch', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả | CHƯƠNG I GIỚI THIỆU VỀ SỰ BIÊN DỊCH Nội dung chính Để máy tính có thể hiểu và thực thi một chương trình được viết bằng ngôn ngữ cấp cao ta cần phải có một trình biên dịch thực hiện việc chuyển đổi chương trình đó sang chương trình ở dạng ngôn ngữ đích. Chương này trình bày một cách tổng quan về cấu trúc của một trình biên dịch và mối liên hệ giữa nó với các thành phần khác - họ hàng của nó - như bộ tiền xử lý bộ tải và soạn thảo liên kết . Cấu trúc của trình biên dịch được mô tả trong chương là một cấu trúc mức quan niệm bao gồm các giai đoạn Phân tích từ vựng Phân tích cú pháp Phân tích ngữ nghĩa Sinh mã trung gian Tối ưu mã và Sinh mã đích. Mục tiêu cần đạt Sau khi học xong chương này sinh viên phải nắm được một cách tổng quan về nhiệm vụ của các thành phần của một trình biên dịch mối liên hệ giữa các thành phần đó và môi trường nơi trình biên dịch thực hiện công việc của nó. Tài liệu tham khảo 1 Trình Biên Dịch - Phan Thị Tươi Trường Đại học kỹ thuật - NXB Giáo dục 1998. 2 Compilers Principles Technique and Tools - Alfred Jeffrey - Addison - Wesley Publishing Company 1986. 3 Compiler Design - Reinhard Wilhelm Dieter Maurer - Addison - Wesley Publishing Company 1996. I. TRÌNH BIÊN DỊCH Nói một cách đơn giản trình biên dịch là một chương trình làm nhiệm vụ đọc một chương trình được viết bằng một ngôn ngữ - ngôn ngữ nguồn source language - rồi dịch nó thành một chương trình tương đương ở một ngôn ngữ khác - ngôn ngữ đích target languague . Một phần quan trọng trong quá trình dịch là ghi nhận lại các lỗi có trong chương trình nguồn để thông báo lại cho người viết chương trình. Chương trình nguồn Trình biên dịch Chương trình đích Hình - Một trình biên dịch 1. Mô hình phân tích - tổng hợp của một trình biên dịch Chương trình dịch thường bao gồm hai quá trình phân tích và tổng hợp - Phân tích đặc tả trung gian - Tổng hợp chương trình đích 1 Hình - Mô hình phân tích - tổng hợp Trong quá trình phân tích chương trình nguồn sẽ được phân rã