Trong trình biên dịch, bảng ký hiệu (symbol table) đóng vai trò quan trọng trong việc quản lý thông tin về các định danh (identifiers) được sử dụng trong chương trình nguồn. Mỗi định danh, ví dụ như tên biến, tên hàm, tên lớp, sẽ được lưu trữ trong bảng ký hiệu cùng với các thuộc tính của nó, chẳng hạn như kiểu dữ liệu, phạm vi sử dụng, địa chỉ bộ nhớ (nếu có), v.v. Cấu trúc dữ liệu thường được sử dụng để triển khai bảng ký hiệu là bảng băm (hash table) hoặc cây tìm kiếm (search tree) để đảm bảo hiệu quả truy xuất thông tin.
Phương án A đúng vì nó mô tả chính xác cấu trúc và chức năng của bảng ký hiệu. Bảng ký hiệu là một cấu trúc dữ liệu, mỗi phần tử của nó là một mẩu tin (record) chứa thông tin về một định danh, bao gồm chính ký hiệu (tên) và các thuộc tính đi kèm của nó.
Phương án B sai vì bảng ký hiệu không phải là một bảng cơ sở dữ liệu đầy đủ chức năng. Mặc dù có thể lưu trữ thông tin, nhưng nó được tối ưu hóa cho các hoạt động truy xuất nhanh trong quá trình biên dịch, khác với cơ sở dữ liệu.
Phương án C sai vì bảng ký hiệu có cấu trúc rõ ràng. Cấu trúc này cho phép trình biên dịch tìm kiếm và truy xuất thông tin về các định danh một cách hiệu quả.
Phương án D sai vì bảng ký hiệu không chỉ đơn thuần là một danh sách các từ tố (tokens). Nó chứa thông tin chi tiết về các định danh, chứ không chỉ là các từ tố.