tìm hiểu về trình biên dịch và xây dựng ngông ngữ lập trình tiếng việt

22 714 2
tìm hiểu về trình biên dịch và xây dựng ngông ngữ lập trình tiếng việt

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

tài liệu tham khảo tìm hiểu về trình biên dịch và xây dựng ngôn ngữ lập trình tiếng việt

04/22/13 1 Giáo Viên HD: Nguyễn Công Nhật Sinh Viên TH: Nguyễn Thị Nha Trang Lớp K42E3 – Khoa Công Nghệ Thông Tin - Đại Học Vinh Vinh ngày 17/05/2006 KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC TÌM HIỂU VỀ TRÌNH BIÊN DỊCH XÂY DỰNG NGÔN NGỮ LẬP TRÌNH TIẾNG VIỆT 17/05/2006 2 Lời nói đầu Từ trước tới nay các ngôn ngữ lập trình đều bằng tiếng Anh, điều đó đã gây không ít trở ngại cho những người lập trình. Xuất phát từ Ý tưởng đó em xin trình bày đề tài: “Giới Thiệu Về Trình Biên Dịch Xây Dựng Ngôn Ngữ Lập Trình Tiếng Viêt” 17/05/2006 3 S l c n i dung t iơ ượ ộ đề à Ch ng 1ươ Ch ng 3ươ Ch ng 4ươ Ch ng 5ươ Ch ng 2ươ Tổng Quan Về Trình Biên Dịch Bộ Phân Tích Từ Vựng Bộ Phân Tích Cú Pháp Bộ Xử Lý Ngữ Nghĩa Giới Thiệu Ngôn Ngữ 17/05/2006 4 Ch ng 1ươ : Tổng Quan Về Trình Biên Dịch 1. Giới thiệu về Trình Biên DịchTrình Biên Dịch là chương trình chịu trách nhiệm dịch một mã văn bản chương trình nguồn của một ngôn ngữ lập trình ra mã máy. • Trình biên dịch có thể được chia thành hai loại : Biên Dịch Thông Dịch. 17/05/2006 5 1.1. Cơ Chế Biên Dịch Mô Hình Biên Dịch Của Công Nghệ Dot Net Mã văn bản chương trình nguồn được dịch sang một dạng mã trung gian sau đó mã trung gian sẽ được dịch xuống mã máy mã máy sẽ được thực thi bởi Control Process Unit (CPU) 17/05/2006 6 1.2. Cơ Chế Thông Dịch Mã văn bản chương trình nguồn được dịch sang một dạng mã trung gian sau đó mã trung gian sẽ được thực thi bởi một phần mềm. Source Code (Mã nguồn) Front-End (Analysis) Immediate Code (Mã trung gian) Process By JVM (Java Virtual Machine) Mô Hình Biên Dịch Của Công Nghệ Java 17/05/2006 7 2. Khái Quát Chương Trình Trình biên dịch được xây dựng là một trình thông dịch. khi chương trình thực thi, toàn bộ văn bản chương trình nguồn được nạp vào bộ nhớ. Trình biên dịch phân biệt chữ hoa, chữ thường. Trong quá trình biên dịch chương trình sẽ dừng lại ngay khi gặp lỗi. Chương trình gồm 3 thành phần chính: - Bộ phân tích từ vựng - Bộ phân tích cú pháp - Bộ xử lý ngữ nghĩa 17/05/2006 8 Ch ng 2ươ : Bộ Phân Tích Từ Vựng 1. Vai trò nhiệm vụ • Nạp toàn bộ văn bản chương trình nguồn vào bộ nhớ. Phân tích văn bản chương trình nguồn thành các token riêng biệt • Báo lỗi khi gặp các ký hiệu không thuộc tập ký hiệu hoặc các token không thỏa mãn luật danh hiệu 17/05/2006 9 2. Mô hình hoạt động 3. Phát hiện xử lý lỗi 4. Biểu thức chính quy 5. Phương pháp xây dựng DFA (Determinstic Finite Automation) Trực tiếp từ biểu thức chính quy 17/05/2006 10 6. Xây dựng bộ phân tích từ vựng Xây dựng vùng đệm nhập Vùng đệm nhập là nơi để nạp văn bản chương trình nguồn vào bộ nhớ. Xây dựng bảng danh hiệu Bảng danh hiệu là một cấu trúc dữ liệu lưu trữ trông tin liên quan đến bảng danh hiệu. Sơ đồ dịch Sơ đồ chuyển trạng thái cho biết cách thức biến đổi tương ứng với ký hiệu nhập. [...]... LR xây dựng DFA bước 5: Xây dựng bảng phân tích SLR 17/05/2006 17 Ch ương 4 : Bộ Xử Lý Ngữ Nghĩa • Tổng Quát : Khi bộ phân tích cú pháp nhận dạng được cấu trúc của một câu lệnh thì gọi thực hiện hàng vi ngữ nghĩa tương ứng • Cấu trúc rễ nhánh • Cấu trúc lệnh Switch • Các cấu trúc lặp 17/05/2006 18 Ch ương 5 : Giới Thiệu Ngôn Ngữ • • Giới thiệu ngôn ngữ C Sharp Giới thiệu ngôn ngữ lập trình tiếng việt. .. văn phạm hiệu trạng  Stack nhập: chứa chuỗi nhập  Tập luật sinh: chứa các luật sinh của văn phạm  Bảng phân tích: gồm hai thành phần Action Goto 17/05/2006  Đơn vị điều khiển 16 4.3 Bảng Phân Tích Có nhiều phương pháp để xây dựng bảng phân tích phương pháp SLR (Simple LR) được xem là dễ cài đặt nhất Sau đây ta sẽ sử dụng phương pháp SLR để xây dựng bảng phân tích bước 1: Xây dựng văn... các luật sinh của văn phạm  Bảng phân tích:cho biết hành vi tương ứng khi biết ký hiệu hiệu trên đỉnh stack trạng thái hiệu trên đính stack nhập  Đơn vị điều khiển 14 3.3 Xây dựng bảng phân tích • Quan hệ thứ tự yếu • Phương pháp xác định quan hệ thứ tự yếu • Giải thuật xây dựng bảng phân tích M: khởi tạo bảng hai chiều M là rỗng for (A Є V + T + { $ }) { for ( a Є T + { $ } ) { if ( A ≤ a )... Pháp Đoán Nhận Trước Không Đệ Quy 2.1 Nguyên tắc phân tích 2.2 Mô hình hoạt động 17/05/2006 - Vùng đệm nhập: chứa văn bản chương trình cần phân tích - Stack:chứa dạng câu của văn phạm trong quá trình phân tích - Bảng phân tích là một bảng hai chiều - Bộ diều khiển 12 2.3 Xây dựng bảng phân tích • Xác định tập First • Xác định tập Follow • Giải thuật phân tích bảng M: for ( A € V , a € T) { M [A, a] =...Ch ương 3 : Bộ Phân Tích Cú Pháp 1 Gới thiệu chung về bộ phân tích cú pháp • Vai trò nhiệm vụ:Dựa vào tập luật sinh cho trước phân tích câu lệnh nhập xem có thỏa tập luật sinh hay không, báo lỗi khi câu lệnh nhập không đúng cú pháp • Phân loại văn phạm • Cây dẫn xuất • Khái niệm về câu, dạng câu • Thiết kế văn phạm 17/05/2006 11 2 Bộ Phân Tích Cú Pháp Đoán Nhận Trước... từ a z từ A Z Các ký tự số: từ 0 9 Các ký tự đặc biệt: + - * / % & > < = ( ) { } ! _ , “ ; • Luật danh hiệu: Sử dụng các ký tự chữ các ký tự số để dặt tên cho một danh hiệu Các danh hiệu phải được bắt đầu bởi ký tự chữ Các danh hiệu không được chưa ký tự khoảng trắng , không chứa các ký tự đặc biệt Chương trình phân biệt chữ hoa , chữ thường 17/05/2006 20 • Lệnh khai báo biến: Chương trình hết... khoảng trắng , không chứa các ký tự đặc biệt Chương trình phân biệt chữ hoa , chữ thường 17/05/2006 20 • Lệnh khai báo biến: Chương trình hết sức đơn giản, chỉ có hai kiểu dữ liệu đó là kiểu số nguyên kiểu số thực • Các Lệnh xử lý điều kiện rẽ nhánh - Lệnh nếu … thì tương đương câu lệnh if … then else - Lệnh nếu … thì … khác - Lệnh lựa chọn … nếu là …tương đương Câu lệnh switch … case… 17/05/2006... Các câu lệnh lặp: - Lệnh trong khi … tương đương câu lệnh while … do - Lệnh thực thi … cho đến khi … tương đương câu lệnh repeat … until… - Lệnh khoảng … tương đương với câu lệnh for … - Lệnh gọi chương trình con 17/05/2006 22

Ngày đăng: 22/04/2013, 21:06

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan