... các chương trình hợp lệ. - Tập các chương trình hợp lệ. chương trình nguồn (ngôn ngữ bậc cao) chương trình dịch chương trình đích (ngôn ngữ máy) Lỗi Hình 1.1: Sơ đồ một chương trình dịch ... một chương trình để dịch các chương trình trên ngôn ngữ này sang mã máy để có thể chạy được. Những chương trình làm nhiệm vụ như vậy gọi là các chương trình dịch. Ngoài ra, một chương trình dịch ... sang ngôn ngữ Acsembly. * Định nghĩa chương trình dịch: Chương trình dịch là một chương trình thực hiện việc chuyển đổi một chương trình hay đoạn chương trình từ ngôn ngữ này (gọi là ngôn...
Ngày tải lên: 18/08/2012, 09:00
... tạo đệ qui trái trong 1 văn phạm. 3) Dịch trực tiếp cú pháp: - Cho 1 biểu thức toán học: o Ðịnh nghĩa trực tiếp cú pháp cho biểu thức số học. o Lược đồ dịch cho biểu thức số học. - Thuộc tính ... ĐỀ CƯƠNG ÔN TẬP MÔN CTD PHẦN LÝ THUYẾT 1) Phân tích từ vựng: - Cho một đoạn mã, hãy xác định các từ vựng có thể ... quan đến phân tích cú pháp theo thứ bậc toán tử. - Thuật toán xây dựng bảng SLR. - Thực hiện quá trình phân tích SLR cho1chuỗi nhập (xây dựng cây phân tích cú pháp). Dạng bài tập: 1) Văn phạm...
Ngày tải lên: 30/05/2013, 22:00
GIÁO TRÌNH MÔN CHƯƠNG TRÌNH DỊCH PHẦN 1
... nghĩa chương trình dịch: chương trình nguồn (ngôn ngữ bậc cao) chương trình dịch chương trình đích (ngôn ngữ máy) Lỗi Hình 1.1: Sơ đồ một chương trình dịch Chương trình dịch là một chương trình ... một chương trình để dịch các chương trình trên ngôn ngữ này sang mã máy để có thể chạy được. Những chương trình làm nhiệm vụ như vậy gọi là các chương trình dịch. Ngoài ra, một chương trình dịch ... từ vựng Chương trình nguồn Phân tích cú pháp Phân tích ngữ nghĩa Sinh mã trung gian Chương 1: Tổng quan về ngôn ngữ lập trình và chương trình dịch 1. Ngôn ngữ lập trình và chương trình dịch. Con...
Ngày tải lên: 03/10/2013, 12:20
GIÁO TRÌNH MÔN CHƯƠNG TRÌNH DỊCH PHẦN 2
... lập trình đều có các luật mô tả các cấu trúc cú pháp. Một chương trình viết đúng phải tuân theo các luật mô tả này. Phân tích cú pháp là để tìm ra cấu trúc dựa trên văn phạm của một chương trình ... nghĩa Chương trình nguồn Bảng ký hiệu từ tố yêu cầu từ tố CHƯƠNG 3 PHÂN TÍCH CÚ PHÁP VÀ CÁC PHƯƠNG PHÁP PHÂN TÍCH CƠ BẢN. 1. MỤC ĐÍCH. Phân tích cú pháp nhận đầu vào là danh sách các từ tố của chương ... từ tố đồng bộ. Các từ tố đồng bộ thường được xác định trước ( VD: end, ; ) Người thiết kế chương trình dịch phải tự chọn các từ tố đồng bộ. Ưu điểm: Đơn giản, không sợ bj vòng lặp vô hạn, hiệu...
Ngày tải lên: 03/10/2013, 12:20
GIÁO TRÌNH MÔN CHƯƠNG TRÌNH DỊCH PHẦN 3
... là kiểu type_error. CHƯƠNG 5 BIÊN DỊCH DỰA CÚ PHÁP. 1. MỤC ĐÍCH, NHIỆM VỤ. - Các hành động dịch phụ thuộc rất nhiều vào cú pháp của chương trình nguồn cần dịch. Quá trình dịch được điều khiển ... nhau. Để thực hiện phép cộng, trớc tiên chương trình dịch đổi cả 2 toán tử về một kiểu (kiểu real) sau đó thực hiện cộng. Bộ kiểm tra kiểu trong chương trình dịch được dùng để chèn thêm phép toán ... hiện một cách tự động bởi chương trình dịch, phép đổi kiểu này còn gọi là ép kiểu. (ép kiểu thường gây mất thông tin) Một phép đổi kiểu được gọi là rõ nếu người lập trình phải viết số thứ để...
Ngày tải lên: 03/10/2013, 12:20
GIÁO TRÌNH MÔN CHƯƠNG TRÌNH DỊCH PHẦN 4
... pháp đơn giản nhất như sau: CHƯƠNG 7 BẢNG KÍ HIỆU. 1. MỤC ĐÍCH, NHIỆM VỤ. Một chương trình dịch cần phải thu thập và sử dụng các thông tin về các tên trong chương trình nguồn. Các thông tin này ... câu lệnh hoặc đoạn chương trình sau thành đoạn mã ba địa chỉ: 1) a * - (b+c) 2) đoạn chương trình C main () { int i; int a[100]; i=1; while(i<=10) { a[i]=0; i=i+1; } } .1. Dịch biểu thức : ... trí cảu nó trong bộ nhớ, các thuộc tính khác phụ thuộc vào ngôn gnữ lập trình. Mỗi lần tên cần xem xét, chương trình dịch sẽ tìm trong bảng kí hiệu xem đã có tên đó chưa. Nếu tên đó là mớithì...
Ngày tải lên: 03/10/2013, 12:20
GIÁO TRÌNH MÔN CHƯƠNG TRÌNH DỊCH PHẦN 5
... tuyệt đối. Một chương trình mã máy tuyệt đối có các lệnh mã máy được định vị tuyệt đối. Chương trình dịch xác định hoàn toàn chương trình đối tượng này. Mã được một chương trình dịch thực sự tạo ... chương trình gọi và chuyển quyền điều khiển cho chương trình con được gọi. Khi quyền điều khiển trả về cho chương trình gọi, SP giảm đi một khoảng bằng kích thước mẩu tin hoạt động của chương trình ... của chương trình con nằm trên đỉnh Stack. Khi lời gọi của chương trình con xuất hiện, chương trình bị gọi được cấp phát, SP được tăng lên một giá trị bằng kích thước mẩu tin hoạt động của chương...
Ngày tải lên: 03/10/2013, 12:20
Nhập môn Chương trình dịch - Bài tập ppt
... III. Cải tiến chương trình phân tích từ vựng - Thêm vào các từ tố cho các câu lệnh for, switch … case - Thông báo lỗi từ vựng: chỉ ra vị trí xảy ra lỗi - Hồi phục lỗi: bỏ qua lỗi và dịch tiếp ... hoặc err_token nếu có lỗi từ vựng. - Viết một hàm main() để thử chạy hàm next_token() với một chương trình thuộc ngôn ngữ SLANG. Ví dụ: Mã nguồn: begin var int number, sum; sum = 0; ... dịch tiếp để bắt hết các lỗi từ vựng IV. Nộp bài tập Sinh viên cần nộp các tài liệu sau - Chương trình - Tài liệu: khoảng 2 trang A4 o Giới thiệu nhóm o Tóm tắt giải pháp o Nêu các khó...
Ngày tải lên: 24/07/2014, 08:21
Nhập môn Chương trình dịch - Bài 15 docx
... Nhập môn Chương trình dịch Học kì II 2006 – 2007 Bài 15: Làm phẳng cây IR Cài đặt class CanonicalExpr { IRStmt[ ... CALL(…) … … SEQ EXP CALL(…) … … Cỳ phỏp iu khin: OP ã Lut ny ó th hin đúng ý đồ của người lập trình chưa? J[e 1 ] = (s 1 , s 2 ,…, s n ); e 1 ’ J[OP(e 1 , e 2 )] = (s 1 , s 2 ,…, s n , s 1 ’, ... lm gc ca cõy IR ã Mt hm c biu din di dng SEQ(s 1 , s 2 , s n ) ã Cú th dch thnh mó móy bng cách dịch lần lượt s 1 , s 2 , …, s n rồi nối mã lại với nhau. SEQ s 1 s 2 s n … Cỳ phỏp iu khin: OP ã...
Ngày tải lên: 24/07/2014, 08:21
Nhập môn Chương trình dịch - Bài 14 pps
... nỳt con ã Cú pháp điều khiển – Mô tả chính xác chương trình dịch cần làm gì – Có thể cài đặt dễ dàng – Có thể chứng minh tính đúng của chương trình dịch Cỏc lnh ó mụ t ã E[v] = TEMP(v) ã E[e 1 + ... f], LABEL(t), [s], LABEL(f)) làm phẳng cây IR SEQ SEQ s 3 s 1 s 2 SEQ s 2 s 3 s 1 Nhập môn Chương trình dịch Học kì II 2006-2007 Bài 14: Sinh mã trung gian (tiếp) Tng kt ã Cỳ phỏp iu khin mụ ... MOVE(t, value.translateE()), new MOVE(variable.translateE(), t)), t); } } Trường hợp có nhiều cách dịch v = e MOVE [e]TEMP(t e ) ESEQ TEMP(t e )SEQ MOVE TEMP(t e )[v] Dạng biểu thức: E[e] = Dạng...
Ngày tải lên: 24/07/2014, 08:21
Nhập môn Chương trình dịch - Bài 13 pps
... NAME ã Nỳt NAME i din cho a ch ca mt tờn trờn b nh ã VD: a ch ca mt nhón nhy NAME(n) Nhập môn Chương trình dịch Học kì II 2006-2007 Bài 13: Sinh mã trung gian ... biu thc nm di nỳt lnh ã Ch cú nỳt biu thc ESEQ cú nỳt lnh nm di ã Cú thể duyệt cây IR để chạy chương trình Mụ t cỏc nỳt biu thc ca IR ã CONST(i): hng s nguyờn i ã TEMP(t): thanh ghi t, mỏy tru ... của hàm CALL e f CALL(e f , e 0 , e 1 ,…) e 0 e 1 e 2 … Địa chỉ của hàm Tham số Mô tả các bước dịch (1) Mã nguồn (dãy các kí tự) If (a == 0) min = a; Phân tích từ vựng Phân tích cú pháp Phân...
Ngày tải lên: 24/07/2014, 08:21
Nhập môn Chương trình dịch - Bài 12 pps
... int A 2 ├ x*fact(x-1) : int A 2 ├ x : int A 2 ├ 0 : int A 2 ├ x == 0 : bool A 2 ├ 1 : int Nhập môn Chương trình dịch Học kì II 2006 – 2007 Bài 12: Luật ngữ nghĩa (tiếp) Lut ng ngha: nh ngha hm ã C/C++: ... ngữ nghĩa cho nỳt ú t cỏc lut nh hn ã Nh vy, b luật ngữ nghĩa cho phép kiểm tra kiểu của một chương trình viết đúng cú pháp và việc kiểm tra luôn luôn dừng Lut ng ngha: lnh return ã Thờm mt dũng ... ngha ã Cỏc lut ng ngha khỏc u vit tng t nh cỏc lut ó hc ã Bộ luật ngữ nghĩa cho phép đánh giá một chương trỡnh cú kiu ỳng hay khụng ã Cỏch vit: theo kiu quy nạp – Viết các luật tiên đề – Với mỗi...
Ngày tải lên: 24/07/2014, 08:21
Nhập môn Chương trình dịch - Bài 11 ppt
... Nhập môn Chương trình dịch Học kì II 2006 - 2007 Bài 11: Luật ngữ nghĩa Ví dụ A ├ E 1 : int A ├ E 2 : int A ... ngha c viết cho từng nút của cây hoặc từng sản xuất ca vn phm ã ỏnh giỏ kiu (kim tra kiu) l quá trình lần ngược cây cú pháp dựa vào các luật Lut ng ngha: lnh While ã Vi cỏc lnh khụng cú kiểu,...
Ngày tải lên: 24/07/2014, 08:21
Nhập môn Chương trình dịch - Bài 10 pptx
... Lnh khai báo kiểu: typedef, class Ni dung ã Kim tra kiu ã Ci t cỏc biu thc kiểu Nhập môn Chương trình dịch Học kì II 2006 – 2007 Bài 10: Biểu thức kiểu Vớ d: C++ ã Kiu c bn: int, char, ã...
Ngày tải lên: 24/07/2014, 08:21
Nhập môn Chương trình dịch - Bài 9 pot
... xuất hiện trong phạm vi (scope) của chương trình: bảng kí hiệu (symbol table) Ci t bng kớ hiu (1) ã Bng kớ hiu cho phép kiểm tra kiểu của các tên trong chương trình class SymTab { Type lookup(String ... < n; i++) { boolean b = } { i: int, n: int } { i: int, n: int, b: boolean } ? Nhập môn Chương trình dịch Học kì II 2006-2007 Bài 09: Phân tích ngữ nghĩa ... th tn dng tớnh lp li của các bước dịch để viết các đoạn mã duyệt cây cú pháp tổng quát (tính đa hình) Phõn tớch ng ngha ã Tỡm tt c cỏc li cũn lại của chương trình nguồn – Khai báo biến – Kiểm...
Ngày tải lên: 24/07/2014, 08:21
Bạn có muốn tìm thêm với từ khóa: