tài liệu môn biên dịch 1

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 1 ppt

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 1 ppt

Ngày tải lên : 24/12/2013, 02:16
... id3 * t1 t3 := id2 + t2 id1 := t3 60.0 t1 := id3 * 60.0 id1 := id2 + t1 MOVF MULF MOVF ADDF MOVF id3, R2 #60.0, R2 id2, R1 R2, R1 R1, id1 Hình 1. 8 - Minh họa giai đoạn biên dịch biểu thức 10 ... định việc gán biến cho ghi Ví dụ 1. 11: Sử dụng ghi (chẳng hạn R1, R2) cho việc sinh mã đích sau: MOVF id3, R2 MULF #60.0, R2 MOVF id2, R1 ADDF R2, R1 MOVF R1, id1 Toán hạng thứ thứ hai thị tương ... t3 dùng lần để chuyển giá trị cho id1 nên giảm bớt Có khác biệt lớn khối lượng tối ưu hoá mã trình biên dịch khác thực Trong trình biên dịch gọi "trình biên dịch chuyên tối ưu", phần thời gian...
  • 10
  • 619
  • 3
Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 2 doc

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 2 doc

Ngày tải lên : 24/12/2013, 02:16
... biểu thức có dạng E1 op E2 op toán tử hai ký pháp hậu tố E E1’ E2’ op Trong E1’, E2’ tương ứng ký pháp hậu tố E1, E2 Nếu E biểu thức dạng (E1) ký pháp hậu tố E ký pháp hậu tố E1 Trong dạng ký pháp ... trực tiếp cú pháp cho việc dịch biểu thức số cách dấu + - thành ký pháp hậu tố sau: Luật sinh Quy tắc ngữ nghĩa E → E1 + T E.t := E1.t || T.t || ‘+’ E → E1 - T E.t := E1.t || T.t || ‘-’ E→ T E.t ... duyệt trước rest1 thăm Phát sinh dịch (Emitting a Translation) Trong chương này, hành vi ngữ nghĩa lược đồ dịch ghi kết trình phiên dịch vào tập tin, lần chuỗi ký tự Chẳng hạn, dịch - + thành...
  • 8
  • 433
  • 1
Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 3 docx

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 3 docx

Ngày tải lên : 24/12/2013, 02:16
... Hình 2 .1 - Minh họa văn phạm mơ hồ string + string 13 Tương tự với cách đặt dấu ngoặc vào biểu thức sau : (9 - 5) + - ( + 2) Bởi chuỗi với nhiều phân tích cú pháp thường có nhiều nghĩa, biên dịch ... kết thúc Nếu A ký hiệu chưa kết thúc dùng làm nhãn cho nút X1 Xn nhãn của theo thứ tự từ trái sang phải A → X1X2 Xn luật sinh Ở X1, , Xn ký hiệu kết thúc chưa kết thúc Ðặc biệt, A → ε nút có ... Tập hợp ký hiệu kết thúc: 0, 1, 2, , 9, +, - Tập hợp ký hiệu chưa kết thúc: list, digit - Các luật sinh nêu - Ký hiệu chưa kết thúc bắt đầu: list Ví dụ 2.2: Từ ví dụ 2 .1 ta thấy: - + list vì: list...
  • 5
  • 331
  • 1
Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 4 pptx

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 4 pptx

Ngày tải lên : 24/12/2013, 02:16
... (“syntax error \n”); /* in thông báo lỗi */ exit (1) ; /* kết thúc */ } V PHÂN TÍCH TỪ VỰNG (Lexical Analysis) Bây thêm vào phần trước trình biên dịch phân tích từ vựng để đọc biến đổi dòng nhập ... < > dòng nhập 31 + 28 + 59 chuyển thành dãy : , < +, >, , < +, >, Bộ cho thấy thuộc tính + vai trò phân tích cú pháp cần thiết dùng đến trình dịch Nhận dạng ... 2 .12 - Giao diện phân tích từ vựng Bộ phân tích từ vựng đọc ký tự từ dòng nhập, nhóm chúng lại thành trị từ vựng chuyển token xác định trị từ vựng với thuộc tính đến giai đoạn sau trình biên dịch...
  • 9
  • 371
  • 0
Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 5 doc

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 5 doc

Ngày tải lên : 24/12/2013, 02:16
... kiểu Stack: day := (14 61 * y) div + (15 3 * m + 2) div + d Ký pháp hậu tố biểu thức sau : day 14 61 y * div 15 3 m * + div + d + := Ðoạn mã máy có dạng : L-value day push push 14 61 + R-value y push ... Stack INSTRUCTIONS STACK DATA push 16 11 rvalue + rvalue * … top pc Hình 2 .15 - Minh họa hình ảnh máy ảo kiểu Stack Ví dụ 2 .15 : Biểu thức (5 + b) * c với b = 11 , c = thực Stack dạng biểu thức hậu ... Stack (top := top +1) Dịch biểu thức Ðoạn mã chương trình dùng để ước lượng biểu thức máy ảo kiểu Stack có liên quan mật thiết với ký pháp hậu tố cho biểu thức Ví dụ 2 .16 : Dịch phép gán sau thành...
  • 7
  • 364
  • 0
Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 6 docx

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 6 docx

Ngày tải lên : 24/12/2013, 02:16
... trình biên dịch cải thiện, nhờ vào số chương trình xử lý chuyên dụng làm giảm đáng kể thời gian đọc liệu từ chương trình nguồn nhóm token Tính đa tương thích (mang dễ dàng) trình biên dịch cải ... cho bước biên dịch sau Do token, phân tích từ vựng đưa thông tin token vào thuộc tính kèm chúng Các token có ảnh hưởng đến định phân tích cú pháp; thuộc tính ảnh hưởng đến việc phiên dịch thẻ ... , >= < >= id pi, count, d2 Mở đầu chữ theo sau chữ cái, chữ số num 3 .14 16, 0, Bất kỳ số literal “ hello ” Mọi chữ nằm “ “ ngoại trừ “ Hình 3.2 - Các ví dụ token Thuộc...
  • 9
  • 452
  • 1
Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 7 doc

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 7 doc

Ngày tải lên : 24/12/2013, 02:16
... nhận dạng số sơ đồ dịch phải theo thứ tự từ sơ đồ nhận dạng số dài digit start digit 12 13 • digit E + or - digit 14 digit 15 16 E other 18 * 19 digit digit start digit 17 digit 21 • 20 digit digit ... (c)) else state =10 ; state = fail ( ) ; break ; case 10 : c = nextchar ( ) ; if (isletter (c)) else state =10 ; if (isdigit(c)) else state = 10 ; state = 11 ; break ; case 11 : retract (1) ; install_id ... sơ đồ dịch phát khoảng trắng trở lại trạng thái bắt đầu sơ đồ dịch để tìm mẫu khác delim start delim 28 29 other * 30 Hình 3 .10 - Sơ đồ dịch cho khoảng trắng Cài đặt sơ đồ dịch Dãy sơ đồ dịch...
  • 10
  • 403
  • 0
Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 8 ppt

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 8 ppt

Ngày tải lên : 24/12/2013, 02:16
... if E1 then if E2 then S1 else S2 có hai phân tích cú pháp : Stmt if expr E1 then if Stmt expr E2 then Stmt S1 elsem Stmt S2 69 Stmt expr then Stmt elsem E1 if if expr then E2 Stmt Stmt S2 S1 Hình ... ký hiệu không kết thúc theo thứ tự A1, A2, , An For i: =1 to n Begin for j: =1 to i -1 begin Thay luật sinh dạng Ai → Ajγ luật sinh Ai→ 1 | δ2γ | | δkγ Aj → 1 | δ2 | | δk tất Ai luật sinh tại; ... tiếp Với đệ qui trái trực tiếp: Luật sinh có dạng: A → A 1 | Aα2 | | Aαm | 1 | β2 | | βn Sẽ thay : A → β1A’ | β2A’ | | βnA’ A' → α1A'| α2A' | | αm A' | ε Với đệ qui trái gián tiếp (và nói...
  • 8
  • 406
  • 0
Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 9 ppt

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 9 ppt

Ngày tải lên : 24/12/2013, 02:16
... sơ đồ dịch tương ứng : T E T F E’ E’ 10 T E’ ε T’ T‘ + * F 11 12 T’ 13 ε F ( 14 15 E 16 ) 17 id Hình 4.5 - Các sơ đồ dịch cho ký hiệu văn phạm Các sơ đồ dịch đơn giản hóa cách thay sơ đồ vào ... tục cho ký hiệu A Mỗi luật sinh có dạng A → 1 | α2 | | αn tương ứng với sơ đồ dịch 1 α2 αn Mỗi luật sinh dạng A → 1 α2 αn tương ứng với sơ đồ dịch 1 α2 αn Ví dụ 4.5: Xét văn phạm sinh biểu ... E' : E: + ε T + ⇒ E' : T ε + ⇒E: T ε ε Tương tự ta có: * ⇒ T: F ε ⇒ F: 13 14 ( F 15 Hình 4.6 - Rút gọn sơ đồ dịch 16 ) 17 ε Phân tích dự đoán không đệ qui 74 Chúng ta xây dựng phân tích dự đoán...
  • 12
  • 431
  • 1
Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 10 pdf

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 10 pdf

Ngày tải lên : 21/01/2014, 08:20
... thúc Nếu toán tử 1 có độ ưu tiên cao θ2 1 •> θ2 θ2 θ2 θ2 •> 1 toán tử kết hợp trái 1
  • 6
  • 288
  • 0
Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 11 ppt

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 11 ppt

Ngày tải lên : 21/01/2014, 08:20
... $ acc Goto s5 r4 99 s 11 10 10 13 r3 s12 r5 r1 10 r5 11 s 11 s12 12 r4 13 r3 Hình 4 .14 - Bảng phân tích cú pháp LR tắc Mỗi văn phạm SLR (1) văn phạm LR (1) , với văn phạm SLR (1) , phân tích cú pháp ... Action = * id s 411 s 512 $ L R 713 810 acc s6 r2 411 512 S 810 Goto r4 r4 s 411 s 512 713 r3 r3 810 r5 r5 r1 Hình 4 .15 - Bảng phân tích cú pháp LALR Bảng phân tích tạo giải thuật 4 .10 gọi bảng phân ... id) I12 : L → id •, $ L → • * R, = | $ R → • id, = | $ Goto (I0,id) I5 : L → id •, = | $ Goto (I 11, R) I13 : R → * R•, $ Goto (I 11, L) ≡ I10 98 Goto (I2,=) I6 : S → L = • R, $ Goto (I 11, *) ≡ I 11 R...
  • 15
  • 312
  • 4
Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 12 docx

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 12 docx

Ngày tải lên : 21/01/2014, 08:20
... ) $ E s2 s4 + Goto s5 acc s3 r4 r4 r4 r4 s3 s2 s3 s2 s4 s5 s9 s4 / r1 s5 / r1 r1 r1 s4 / r2 s5 / r2 r2 r2 r3 r3 r3 r3 Hình 4 .16 - Bảng phân tích cú pháp SLR đụng độ Nhìn vào bảng SLR hình trên, ... id * id $ Shift s3 0E1 + id * id $ Reduce by E 0E1+4 id id * id $ Shift s4 E + id * id $ Shift s3 0E1+4E7 * id $ Reduce by E id 10 4 Bây đến ô đụng độ action[7, *] nên lấy r1 hay s5? Lúc phân tích ... Stack Output 0E1+4E7 + id $ Sẽ phải xét action [7, +] nên chọn r1 hay s4? Nếu ta chọn r1 tức thu gọn luật sinh E E + E tức + thực trước hay toán tử + có kết hợp trái => action [7, +] = r1 Một cách...
  • 6
  • 318
  • 1
Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 13 doc

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 13 doc

Ngày tải lên : 21/01/2014, 08:20
... 4 .11 Cho văn phạm G: S→D•D|D D → DB | B B→0 |1 a) Xây dựng phân tích cú pháp thứ tự ưu tiên cho văn phạm b) Hãy dùng phân tích cú pháp xây dựng để phát sinh phân tích cú pháp cho câu nhập: 10 1 10 1 ... pháp xây dựng để phát sinh phân tích cú pháp cho câu nhập: 10 1 10 1 4 .12 Cho văn phạm G Assign → id : = exp Exp → Exp + Term | Term 11 3 Term → Term * Factor | Factor Factor → id | ( Exp ) a) Xây ... { print ("%d\n", $1) ; } ; expr : expr | '+' term { $$ = $1 + $3; } '* ' factor { $$ = $1 * $3; } term ; term : term | factor ; factor: | '(' expr ')' { $$ = $2 ; } DIGIT ; 10 8 %% yylex ( ) {...
  • 9
  • 347
  • 1
Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 14 pdf

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 14 pdf

Ngày tải lên : 21/01/2014, 08:20
... thích từ lên Ví dụ 5 .1: Xét định nghĩa trực tiếp cú pháp Luật sinh Luật ngữ nghĩa L En print(E.val) E E1 + T E.val := E1.val + T.val E T E.val := T.val T T1 * F T.val := T1.val * F.val T F T.val ... hiệu newline) có thích sau: L E.val = 19 E.val = 15 + * F.val = digit.lexval = T.val = F.val = T val = 15 T.val = n F val = digit.lexval = digit.lexval = 11 7 Hình 5.2- Cây thích cho biểu thức ... in L real , in L id3 entry , in L 10 id2 entry entry id1 Hình 5.6- Ðồ thị phụ thuộc cho phân tích cú pháp hình 5.4 11 9 Chú ý: Với luật ngữ nghĩa dạng b = f( c1, c2, , ck) có chứa lời gọi thủ tục...
  • 5
  • 263
  • 0
Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 15 pdf

Tài liệu Tài liệu trình biên dịch C (ĐH Cần Thơ) part 15 pdf

Ngày tải lên : 21/01/2014, 08:20
... := i + 10 DAG := Biểu diễn i 10 num + + id := entry i 10 Hình 5 .11 - Minh họa cài đặt DAG Nút 1: có nhãn id, trỏ trỏ tới entry i Nút 2: có nhãn num, giá trị 10 Nút 3: có nhãn +, trái nút 1, phải ... dựng cú pháp cho biểu thức là: Luật sinh Luật ngữ nghĩa E E1 + T E.nptr := mknode(‘+’, E1.nptr, T.nptr) E E1 - T E.nptr := mknode(‘-’, E1.nptr, T.nptr) E T E.nptr := T.nptr T (E) T.nptr := E.nptr ... thuộc tính tổng hợp nptr để lưu trỏ trỏ tới nút cú pháp 12 1 Với biểu thức a - + c ta có phân tích cú pháp (biểu diễn đường chấm) tronh hHình 5.9 12 2 E.nptr E.nptr E.npt T.nptr + id T.nptr - T.nptr...
  • 5
  • 209
  • 0

Xem thêm