Basic block là gì?
- ★
- ★
- ★
- ★
- ★
Trong xây dựng trình biên dịch (compiler construction), basic block là một chuỗi các mã không có rẽ nhánh (branch) ngoại trừ điểm vào (entry point) và điểm thoát (exit point) . Basic blocklà một tập hợp các câu lệnh luôn thực hiện lần lượt theo một trình tự. Hình thức hạn chế này làm cho basic block dễ phân tích. Các trình biên dịch (compiler) thường phân rã các chương trình thành các basic block của chúng như một bước đầu tiên trong quá trình phân tích. Các basic block tạo thành các đỉnh (vertice) hoặc nút (node) trong control-flow graph.
Mã trong một basic block có:
- Một điểm vào, nghĩa là không có mã nào bên trong nó là đích (destination) của lệnh nhảy (jump instruction) ở bất kỳ đâu trong chương trình.
- Một điểm thoát, nghĩa là chỉ lệnh (instruction) cuối cùng mới có thể khiến chương trình bắt đầu thực thi mã trong một basic block khác.
Trong những trường hợp này, bất cứ khi nào lệnh đầu tiên trong một basic block được thực thi, phần còn lại của các lệnh nhất thiết phải được thực thi chính xác một lần và theo thứ tự.
Learning English Everyday