JavaScript is required

Các ôtômát hữu hạn trạng thái (Finite State Automata – FSA) được sử dụng để

A.

Phân tích từ vựng

B.

Phân tích cú pháp

C.

Sinh mã

D.

Tối ưu mã

Trả lời:

Đáp án đúng: A


Ôtômát hữu hạn trạng thái (Finite State Automata – FSA) là một mô hình tính toán được sử dụng rộng rãi trong nhiều lĩnh vực của khoa học máy tính. Trong ngữ cảnh của trình biên dịch, FSA đặc biệt hữu ích trong việc phân tích từ vựng (lexical analysis). * **A. Phân tích từ vựng:** Đây là đáp án chính xác. Phân tích từ vựng là giai đoạn đầu tiên của quá trình biên dịch, trong đó mã nguồn được chia thành các đơn vị từ vựng (tokens) như từ khóa, định danh, toán tử, và hằng số. FSA được sử dụng để nhận diện các mẫu ký tự hợp lệ và tạo ra các tokens tương ứng. * **B. Phân tích cú pháp:** Phân tích cú pháp (parsing) là giai đoạn tiếp theo sau phân tích từ vựng, trong đó các tokens được tổ chức thành một cấu trúc cây cú pháp (syntax tree) để kiểm tra tính đúng đắn của cấu trúc chương trình. Các công cụ mạnh hơn như context-free grammars (CFG) và pushdown automata (PDA) thường được sử dụng cho phân tích cú pháp, thay vì FSA. * **C. Sinh mã:** Sinh mã (code generation) là giai đoạn cuối cùng của quá trình biên dịch, trong đó mã trung gian hoặc mã máy được tạo ra từ cây cú pháp. FSA không được sử dụng trực tiếp trong giai đoạn này. * **D. Tối ưu mã:** Tối ưu mã (code optimization) là giai đoạn cải thiện hiệu suất của mã bằng cách loại bỏ các phần dư thừa, thay thế các phép toán tốn kém bằng các phép toán rẻ hơn, và sắp xếp lại mã để tận dụng tối đa phần cứng. FSA không được sử dụng trực tiếp trong giai đoạn này. Vì vậy, đáp án đúng là A.

Câu hỏi liên quan