Sunday, May 21, 2017

Ưu nhược điểm phân tích Top-Down Chương trình dịch

  • Thuật toán duyệt gần như hoàn toàn, không có các bước cắt nhánh, chậm nhưng dễ hiểu
  • Thuật toán không phải vạn năng, không làm việc được với các văn phạm có đệ quy trái
  •  Lý do là vì không có cắt nhánh phù hợp, dẫn đến việc đi mãi theo chiều sâu mà không quay lui
  • Việc cài đặt cắt nhánh là rất khó khăn mặc dù có nhiều gợi ý thú vị:
  • Cắt nhánh khi trong A có terminal không có trong w
  • Cắt nhánh khi số terminal trong A nhiều hơn trong w
  • Sử dụng lại những kết quả đã duyệt cũ
top down là gì,bottom up là gì,top down,bottom up,top down và bottom up là gì,top-down,bottom-up

1 số bài tập tham khảo:

1. Chỉ ra quá trình thực hiện phân tích top-down của chuỗi (a=(b+a)) thuộc văn phạm G có tập luật:  S → B  B → R | ( B )  R → E = E  E → a | b | ( E + E )
2. Chỉ ra quá trình thực hiện phân tích top-down của chuỗi true and not false với tập luật văn phạm:  E → E and T | T  T → T or F | F  F → not F | ( E ) | true | false
3. Chỉ ra quá trình thực hiện phân tích top-down của chuỗi abbcbd thuộc văn phạm G có tập luật:  S → a A | b A  A→ c A | b A | d
4. Có thể áp dụng thuật toán phân tích top-down cho chuỗi (5+7)*3 thuộc văn phạm G dưới đây hay không? Chỉ ra quá trình thực hiện nếu có thể  E → E + T | T  T → T * F | F  F → ( E ) | số
Previous Post
Next Post

post written by:

0 comments: