Mục tiêu của học phần: - Kiến thức: Nắm được các kiến thức cơ bản về văn phạm, biểu thức chính quy, automat, phương pháp phân tích từ vựng, phân tích cú pháp, nắm được các bước xây dựn
Trang 11
BỘ GIÁO DỤC ĐÀO TẠO CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐH PHƯƠNG ĐÔNG Độc lập – Tự do – Hạnh phúc
======================= -o0o -
CHƯƠNG TRÌNH ĐÀO TẠO ĐẠI HỌC NGÀNH ĐÀO TẠO: CÔNG NGHỆ THÔNG TIN -
ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN
1 Tên học phần: Chương trình dịch Mã số: 0221302
2 Số tín chỉ: 2
3 Trình độ: Sinh viên năm thứ 5
4 Phân bổ thời gian theo giờ tín chỉ:
5 Các điều kiện tiên quyết:
- Học phần tiên quyết: Automat hữu hạn
- Học phần học trước:
- Học phần song hành:
6 Mục tiêu của học phần:
- Kiến thức: Nắm được các kiến thức cơ bản về văn phạm, biểu thức chính quy,
automat, phương pháp phân tích từ vựng, phân tích cú pháp, nắm được các bước xây dựng chương trình dịch từ đó có thể phân tích và xây dựng được chương
trình dịch cho một ngôn ngữ không quá phức tạp
- Kỹ năng: Có thể phân tích, xây dựng chương trình dịch cho một ngôn ngữ
- Thái độ: Rèn luyện cho sinh viên tính nghiêm túc, tích cực, chủ động trong
quá trình làm việc
7 Mô tả vắn tắt nội dung học phần :
Chương trình dịch là một môn học của ngành khoa học máy tính nghiên cứu cơ
sở lý thuyết và kỹ thuật xây dựng từng phần dẫn đến xây dựng toàn chương trình dịch Cùng với sự phát triển của lý thuyết ngôn ngữ, kỹ thuật xây dựng chương trình dịch ngày càng hoàn thiện làm cơ sở cho việc ra đời những ngôn ngữ lập trình mới và nâng cấp những ngôn ngữ lập trình đã có làm cho các ngôn ngữ lập trình ngày càng mạnh nhưng lại càng tiện dụng
Nghiên cứu chương trình dịch, nắm được kỹ thuật xây dựng chương trình dịch, người học có thể viết được chương trình dịch, biết cách tạo ra một ngôn ngữ lập trình mới Hơn nữa những kỹ thuật xây dựng chương trình dịch còn được áp dụng khi xây dựng các chương trình khác như các chương trình hệ thống, các
Lên lớp
Thực hành, thí nghiệm, thực tế, studio
Tự học, tự nghiên cứu
Lý thuyết Bài tập Thảo luận
Trang 22
chương trình tiện ích và các chương trình ứng dụng và những kỹ thuật đó còn được áp dụng cho cả các ngành khác như trí tuệ nhân tạo, hiểu ngôn ngữ tự nhiên, dịch máy… Người học hiểu sâu sắc bên trong các ngôn ngữ lập trình từ
đó sử dụng các ngôn ngữ lập trình hiệu quả hơn
8 Nhiệm vụ của sinh viên
- Nộp học phí đầy đủ
- Tham dự giờ đầy đủ, nắm vững nội dung bài giảng, hoàn thành bài tập theo yêu cầu của giáo viên, đọc tài liệu tham khảo
- Thi đạt
9 Tài liệu học tập
- Học liệu bắt buộc:
[1] Nguyễn Đình Hân
Chương trình dịch, ĐHSPKT Hưng Yên
- Học liệu tham khảo:
[2] Phan Thị Tươi
Trình biên dịch, NXB Giáo dục
[3] Nguyễn Văn Ba
Thực hành kỹ thuật biên dịch, Đại học Bách Khoa, Hà nội
10 Tiêu chuẩn đánh giá sinh viên
- Dự lớp đầy đủ: 10%
- Bài tập, thảo luận: 10%
- Điểm kiểm tra giữa kỳ: 10%
- Điểm thi kết thúc học phần: 70%
11 Thang điểm: 10
12 Nội dung chi tiết học phần
12.1 Nội dung
Chương 1 Giới thiệu chung
1.1 Chức năng và cấu trúc của một chương trình dịch
1.2 Văn phạm của ngôn ngữ lập trình
Chương 2 Phân tích từ vựng
2.1 Nhiệm vụ của bộ phận phân tích từ vựng
2.2 Diễn tả quá trình phân tích từ vựng bằng Automat hữu hạn
2.3 Cài đặt bộ phận phân tích từ vựng
Chương 3 Phân tích cú pháp
3.1 Đại cương về phân tích cú pháp
3.2 Phương pháp phân tích cú pháp từ dưới lên
3.3 Phương pháp phân tích cú pháp từ trên xuống
Chương 4 Quản lý các danh biểu trong chương trình
4.1 Bảng các ký hiệu
Trang 33
4.2 Cấu trúc dữ liệu dựng cho bảng các ký hiệu
4.3 Thể hiện phạm vi hiệu lực các danh biểu trong bảng các ký hiệu
Chương 5 Xử lý lỗi
5.1 Các loại lỗi và cách xử lý
5.2 Phục hồi sau khi gặp lỗi
Chương 6 Sản sinh mã
6.1 Nhiệm vụ của sản sinh mã
6.2 Phương pháp định hướng theo cú pháp
6.3 Các ngôn ngữ trung gian
12.2 Hình thức tổ chức dạy học (phụ lục kèm theo)
13 Ngày phê duyệt
14 Cấp phê duyệt: Trường Đại học Phương Đông
PGS TS Phan Hữu Huân PGS TS Bùi Thiện Dụ