JavaScript is required

Phát biểu nào đúng?

A.

Bộ phân tích cú pháp gạt-thu gọn (Shift – Reduce) cố gắng xây dựng một cây phân tích cú pháp cho chuỗi nhập bắt đầu từ nút lá và đi lên hướng về nút gốc. Tại mỗi bước thu gọn, một chuỗi con cụ thể đối sánh được với vế phải của một luật sinh nào đó thì chuỗi con này sẽ được thay thế bởi ký hiệu vế trái của luật sinh đó. Và nếu chuỗi con được chọn đúng tại mỗi bước, một dẫn xuất phải đảo ngược sẽ được xây dựng.

B.

Bộ phân tích cú pháp gạt-thu gọn (Shift – Reduce) là phương pháp xây dựng một cây phân tích cú pháp cho chuỗi nhập bắt đầu từ nút lá và đi lên hướng về nút gốc. Tại mỗi bước thu gọn, một chuỗi con cụ thể đối sánh được với vế trái của một luật sinh nào đó thì chuỗi con này sẽ được thay thế bởi ký hiệu vế phải của luật sinh đó. Và nếu chuỗi con được chọn đúng tại mỗi bước, một dẫn xuất phải đảo ngược sẽ được xây dựng.

C.

Bộ phân tích cú pháp gạt-thu gọn (Shift – Reduce) xây dựng một cây phân tích cú pháp cho chuỗi nhập bắt đầu từ nút lá và đi lên hướng về nút gốc. Tại mỗi bước thu gọn, một chuỗi con cụ thể đối sánh được với vế phải của một luật sinh nào đó thì chuỗi con này sẽ được thay thế bởi ký hiệu vế phải của luật sinh đó. Và nếu chuỗi con được chọn đúng tại mỗi bước, một dẫn xuất phải đảo ngược sẽ được xây dựng.

D.

Bộ phân tích cú pháp gạt-thu gọn (Shift – Reduce) xây dựng một cây phân tích cú pháp cho chuỗi nhập bắt đầu từ nút lá và đi lên hướng về nút gốc. Tại mỗi bước thu gọn, một chuỗi con cụ thể đối sánh được với vế trái của một luật sinh nào đó thì chuỗi con này sẽ được thay thế bởi ký hiệu vế trái của luật sinh đó. Và nếu chuỗi con được chọn đúng tại mỗi bước, một dẫn xuất phải đảo ngược sẽ được xây dựng.

Trả lời:

Đáp án đúng: A


Đáp án đúng là A. Bộ phân tích cú pháp gạt-thu gọn (Shift-Reduce) hoạt động bằng cách xây dựng cây phân tích cú pháp từ dưới lên, bắt đầu từ các nút lá (terminal) và tiến dần đến nút gốc (non-terminal). Tại mỗi bước thu gọn (reduce), nó tìm một chuỗi con trong ngăn xếp (stack) khớp với vế phải của một luật sinh. Chuỗi con này sau đó được thay thế bằng ký hiệu ở vế trái của luật sinh đó. Điều quan trọng là, nếu việc chọn chuỗi con để thu gọn được thực hiện đúng ở mỗi bước, bộ phân tích cú pháp sẽ xây dựng một dẫn xuất phải đảo ngược (reverse rightmost derivation). Điều này có nghĩa là nó tái tạo lại các bước dẫn xuất theo thứ tự ngược lại so với cách dẫn xuất phải thông thường hoạt động. Các lựa chọn B, C và D sai vì chúng thay thế chuỗi con khớp với vế phải của một luật sinh bằng vế phải của luật sinh đó, điều này ngược lại với nguyên tắc hoạt động của bộ phân tích cú pháp gạt-thu gọn.

Câu hỏi liên quan