wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

chương 1 chương trình dịch

Total questions: 40

Worksheet time: 30mins

Name
Class
Date
1.
Câu 1 : Chương trình dịch không có khả năng nào trong các khả năng sau?
a)
A. Phát hiện được lỗi ngữ nghĩa và tự động biểu diễn dữ liệu đầu vào
b)
B. Phát hiện được lỗi cú pháp
c)
C. Thông báo lỗi cú pháp
d)
D. Tạo được chương trình đích
2.
Câu 2 : Phát biểu nào dưới đây đúng
a)
A. Chương trình là dãy các lệnh được tổ chức theo các quy tắc được xác định bởi ngôn ngữ lập trình cụ thể
b)
B. Trong chế độ thông dịch, mỗi câu lệnh của chương trình nguồn được dịch thành một câu lệnh của chương trình đích
c)
C. Mọi bài toán đều có chương trình để giải trên máy tính
d)
D. Nếu chương trình nguồn có lỗi cú pháp thì chương trình đích cũng có lỗi cú pháp
3.
Câu 3 : Chương trình dịch là chương trình có chức năng
a)
A. Chuyển đổi chương trình được viết bằng ngôn ngữ lập trình bậc cao thành chương trình thực hiện được trên máy
b)
B. Chuyển đổi chương trình được viết bằng ngôn ngữ lập trình Pascal thành chương trình thực hiện được trên máy
c)
C. Chuyển đổi chương trình được viết bằng ngôn ngữ máy thành chương trình thực hiện được trên máy
d)
D. Chuyển đổi chương trình được viết bằng ngôn ngữ lập trình bậc cao thành chương trình hợp ngữ
4.
Câu 4 : Các thành phần của ngôn ngữ lập trình là
a)
A. Chương trình thông dịch và chương trình biên dịch
b)
B. Chương trình dịch, bảng chữ cái, cú pháp, ngữ nghĩa
c)
C. Bảng chữ cái, cú pháp, ngữ nghĩa
d)
D. Tên dành riêng, tên chuẩn và tên do người lập trình định nghĩa
5.
Câu 5 : Ngôn ngữ máy tính thường được dịch thành mã giả bằng ngôn ngữ
a)
A. Assembly (Hợp ngữ)
b)
B. Machine
c)
C. Pascal
d)
D. FORTRAN
6.
Câu 6 : Đầu ra của bộ phân tích từ vựng là
a)
A. Tập các biểu thức chính quy
b)
B. Cây cú pháp
c)
C. Tập các từ tố (tokens)
d)
D. Chuỗi ký tự
7.
Câu 7 : Các ôtômát hữu hạn trạng thái (Finite State Automata -- FSA) được sử dụng để
a)
A. Phân tích từ vựng
b)
B. Phân tích cú pháp
c)
C. Sinh mã
d)
D. Tối ưu mã
8.
Câu 8 : Khái niệm nào của văn phạm được sử dụng trong chương trình dịch
a)
A. Phân tích từ vựng
b)
B. Phân tích cú pháp
c)
C. Sinh mã
d)
D. Tối ưu mã
9.
Câu 9 : Trị từ vựng (lexeme) là
a)
A. Các định danh
b)
B. Các hằng số
c)
C. Các từ khóa
d)
D. Bao gồm cả ba (các định danh, các hằng số, và các từ khóa)
10.
Câu 10 : Chương trình đối tượng là:
a)
A. Chương trình được viết bằng ngôn ngữ máy
b)
B. Được dịch thành ngôn ngữ máy
c)
C. Chương trình ngôn ngữ máy được tạo ra, bắt nguồn từ ngôn ngữ bậc cao
d)
D. Chương trình viết bằng ngôn ngữ lập trình hướng đối tượng
11.
Câu 11 : Những giai đoạn nào được xử lý trong một chương trình dịch?
a)
A. Phân tích thiết kế, lập trình, và kiểm thử
b)
B. Xây dựng chương trình và viết tài liệu
c)
C. Phân tích từ vựng, phân tích cú pháp, và sinh mã
d)
D. Đào tạo và hướng dẫn sử dụng phần mềm
12.
Câu 12 : Luật mô tả cho từ tố const trong ngôn ngữ lập trình bậc cao (pascal, C,...) là:
a)
A. Từ khoá
b)
B. const
c)
C. Chuỗi các kí tự
d)
D. Chuỗi các chữ cái
13.
Câu 13 : Luật nào sau đây mô tả từ tố Quan hệ trong ngôn ngữ C
a)
A. Dấu < hoặc > hoặc <= hoặc >= hoặc != hoặc =
b)
B. Dấu > hoặc < hoặc <= hoặc >= hoặc <> hoặc =
c)
C. Dấu > hoặc < hoặc <= hoặc >= hoặc <> hoặc = =
d)
D. Dấu > hoặc < hoặc <= hoặc >= hoặc !=hoặc = =
14.
Câu 14 : Trong chương trình nguồn (ngôn ngữ Pascal): “var a: integer”. a là:
a)
A. Từ tố số nguyên
b)
B. Từ vựng
c)
C. Từ tố số thực
d)
D. Từ tố
15.
Câu 15 : Trong chương trình nguồn (ngôn ngữ C): “int a” thì “int” là:
a)
A. Từ tố số nguyên
b)
B. Từ tố từ khóa
c)
C. Từ tố số thực
d)
D. Mẫu mô tả
16.
Câu 16 : Trình biên dịch là một chương trình làm nhiệm vụ
a)
A. Đọc một chương trình được viết bằng một ngôn ngữ - ngôn ngữ nguồn (source language) - rồi dịch nó thành một chương trình tương đương ở một ngôn ngữ khác - ngôn ngữ đích (target languague).
b)
B. Kiểm tra lỗi phần mềm
c)
C. Diệt virus
d)
D. Đọc file có đuôi .pdf
17.
Câu 17 : Các giai đoạn của biên dịch gồm
a)
A. Phân tích từ vựng; Phân tích ngữ nghĩa; Sinh mã trung gian; Tối ưu mã; Sinh mã đích
b)
B. Phân tích từ vựng; Phân tích cú pháp; Phân tích ngữ nghĩa; Sinh mã trung gian; Tối ưu mã; Sinh mã đích
c)
C. Phân tích từ vựng; Phân tích cú pháp; Phân tích ngữ nghĩa; Sinh mã trung gian; Tối ưu mã;
d)
D. Phân tích từ vựng; Phân tích cú pháp; Phân tích ngữ nghĩa; Sinh mã trung gian
18.
Câu 18 : Trong một trình biên dịch thì Phân tích từ vựng là giai đoạn
a)
A. Thứ hai
b)
B. Thứ ba
c)
C. Thứ nhất
d)
D. Thứ tư
19.
Câu 19 : Trong một trình biên dịch thì kết quả của giai đoạn Phân tích từ vựng làm đầu vào cho giai đoạn
a)
A. Phân tích cú pháp
b)
B. Phân tích ngữ nghĩa;
c)
C. Sinh mã trung gian;
d)
D. Sinh mã đích
20.
Câu 20 : Các giai đoạn cần thực hiện của trình biên dịch có thể được nhóm thành
a)
A. Kỳ đầu (Front end) và kỳ sau (Back end).
b)
B. Kỳ đầu, kỳ giữa, và kỳ cuối
c)
C. Kỳ đầu, kỳ sau, và kỳ cuối
d)
D. Kỳ bắt đầu, kỳ phát triển, và kỳ kết thúc
21.
Câu 21 : Trong một trình biên dịch thì giai đoạn “Sinh mã đích” là giai đoạn
a)
A. Bắt đầu
b)
B. Thứ hai
c)
C. Giữa
d)
D. Cuối cùng
22.
Câu 22 : Trong một trình biên dịch, giai đọan phân tích từ vựng sẽ
a)
A. Đọc chương trình nguồn từ trái sang phải (quét nguyên liệu - scanning) để tách ra thành các thẻ từ (token).
b)
B. Đọc chương trình nguồn từ phải sang trái (quét nguyên liệu - scanning) để tách ra thành các thẻ từ (token).
c)
C. Đọc chương trình nguồn từ dưới lên trên (quét nguyên liệu - scanning) để tách ra thành các thẻ từ (token).
d)
D. Đọc chương trình nguồn từ trên xuống dưới (quét nguyên liệu - scanning) để tách ra thành các thẻ từ (token).
23.
Câu 23 : Trong một trình biên dịch, giai đoạn phân tích ngữ nghĩa sẽ thực hiện
a)
A. Việc kiểm tra xem chương trình nguồn có chứa lỗi về ngữ nghĩa hay không và tập hợp thông tin về kiểu cho giai đoạn sinh mã về sau.
b)
B. Phân tích cú pháp.
c)
C. Nhóm các từ tố và từ vựng
d)
D. Sinh mã giả asembly
24.
Câu 24 : Trong một trình biên dịch, giai đoạn phân tích cú pháp
a)
A. Thực hiện sinh mã trung gian
b)
B. Thực hiện công việc nhóm các thẻ từ của chương trình nguồn thành các ngữ đoạn văn phạm (grammatical phrase), mà sau đó sẽ được trình biên dịch tổng hợp ra thành phẩm.
c)
C. Nhóm các ký tự
d)
D. Phân tích lỗi và thực hiện sinh mã
25.
Câu 25 : Trong một trình biên dịch, bảng ký hiệu (symbol table) là
a)
A. Một cấu trúc dữ liệu mà mỗi phần tử là một mẩu tin dùng để lưu trữ một định danh, bao gồm các trường lưu giữ ký hiệu và các thuộc tính của nó.
b)
B. Một bảng cơ sở dữ liệu
c)
C. Một bảng không có cấu trúc
d)
D. Một danh sách các từ tố
26.
Câu 26 : Luật nào sau đây mô tả Xâu trong ngôn ngữ C?
a)
A. Bất kỳ các kí hiệu nào nằm trong cặp dấu ‘’ ngoại trừ ‘
b)
B. Bắt đầu bằng dấu ‘ theo sau là không hoặc nhiều kí hiệu, theo sau là dấu ’
c)
C. Bất kỳ các kí hiệu nào nằm trong cặp dấu “” ngoại trừ “
d)
D. Bắt đầu bằng dấu “ theo sau là không hoặc nhiều kí hiệu, theo sau là dấu ”
27.
Câu 27 : Trong chương trình nguồn (ngôn ngữ C): “a = 1”. 1 là:
a)
A. Từ tố số nguyên
b)
B. Từ tố từ khóa
c)
C. Từ tố số thực
d)
D. Mẫu mô tả
28.
Câu 28 : Phát biểu nào sau đây đúng?
a)
A. Phân tích ngữ nghĩa sẽ thực hiện việc kiểm tra xem chương trình nguồn có chứa lỗi về ngữ nghĩa hay không và tập hợp thông tin về kiểu cho giai đoạn sinh mã về sau.
b)
B. Phân tích từ vựng sẽ thực hiện việc kiểm tra xem chương trình nguồn có chứa lỗi về ngữ nghĩa hay không và tập hợp thông tin về kiểu cho giai đoạn sinh mã về sau.
c)
C. Phân tích cú pháp sẽ thực hiện việc kiểm tra xem chương trình nguồn có chứa lỗi về ngữ nghĩa hay không và tập hợp thông tin về kiểu cho giai đoạn sinh mã về sau.
d)
D. Phân tích ngữ nghĩa và phân tích ngữ nghĩa sẽ thực hiện việc kiểm tra xem chương trình nguồn có chứa lỗi về ngữ nghĩa hay không và tập hợp thông tin về kiểu cho giai đoạn sinh mã về sau.
29.
Câu 29 : Khi thực hiện phân tích ngữ nghĩa cho câu lệnh position = initial + rate * 10.5 thì trong
a)
A. position, initial, rate phải khai báo là các biến số nguyên
b)
B. position, initial, rate phải khai báo là các biến số thực
c)
C. position, initial, rate phải khai báo là các biến số thực và số nguyên
d)
D. position, initial, rate phải khai báo là các biến kiểu chuỗi
30.
Câu 30 : Khi thực hiện phân tích ngữ nghĩa cho câu lệnh position = initial + rate * 10 thì trong
a)
A. position, initial, rate phải khai báo là các biến số nguyên
b)
B. position, initial, rate phải khai báo là các biến số thực
c)
C. position, initial, rate có thể được khai báo là các biến số thực và số nguyên
d)
D. position, initial, rate phải khai báo là các biến kiểu chuỗi
31.
Câu 31 : Biết rằng các biến position, initial, rate được khai báo kiểu số thực thì khi thực hiện
a)
A. 10.00
b)
B. 10.0001
c)
C. 10.0002
d)
D. 10.0
32.
Câu 32 : Các giai đoạn của một trình biên dịch (chương trình dịch) có thể được nhóm thành các
a)
A. Kỳ đầu (Front end), kỳ sau (Back end)
b)
B. Kỳ đầu, kỳ giữa, kỳ sau
c)
C. Kỳ đầu, kỳ giữa, kỳ sau, kỳ cuối
d)
D. Kỳ đầu, kỳ sau, kỳ cuối
33.
Câu 33 : Cây phân tích cú pháp (parse tree) được xây dựng dựa trên ý tưởng
a)
A. Ngôn ngữ được đặc tả bởi các ký hiệu kết thúc. Phân tích cú pháp dựa vào luật sinh để xây dựng cây phân tích cú pháp.
b)
B. Ngôn ngữ được đặc tả bởi các ký hiệu không kết thúc. Phân tích cú pháp dựa vào luật sinh để xây dựng cây phân tích cú pháp.
c)
C. Ngôn ngữ được đặc tả bởi các luật sinh. Phân tích cú pháp dựa vào luật sinh để xây dựng cây phân tích cú pháp.
d)
D. Ngôn ngữ được đặc tả bởi các ký hiệu kết thúc và không kết thúc. Phân tích cú pháp dựa vào luật sinh để xây dựng cây phân tích cú pháp.
34.
Câu 34 : Giả sử ngôn ngữ đặc tả bởi các luật sinh sau: Stmt -> id := expr; expr -> expr + expr | expr * expr | id | number; Với câu nhập vào là position := initial + rate * 60 thì sẽ có một cây phân tích cú pháp được xây dựng. Khi duyệt cây phâp tích cú pháp này chúng ta sẽ có kết quả các từ tố (tokens) theo thứ tự là
a)
A. 60, position, :=, initial, +, rate, *
b)
B. position, :=, initial, +, rate, *, 60
c)
C. :=, position, initial, +, rate, *, 60
d)
D. initial, position, :=, +, rate, *, 60
35.
Câu 35 : Nếu ký hiệu chưa kết thúc A có luật sinh A → XYZ thì cây phân tích cú pháp có thể có một nút trong có nhãn A và có 3 nút con có nhãn tương ứng từ trái qua phải là
a)
A. X, Y, Z
b)
B. Z, Y, X
c)
C. Y, Z, X
d)
D. Z, X
36.
Câu 36 : Dịch biểu thức trung tố (9 - 5) + 2 thành dạng biểu thức hậu tố của nó là
a)
A. 9 5 - 2 +
b)
B. + 9 5 - 2
c)
C. - 9 5 2 +
d)
D. 2 9 5 - +
37.
Câu 37 : Dịch biểu thức trung tố 9 - (5 + 2) thành dạng biểu thức hậu tố của nó là
a)
A. 9 5 - 2 +
b)
B. 9 5 2 + -
c)
C. - 9 5 2 +
d)
D. 2 9 5 - +
38.
Câu 38 : Quá trình dịch được cài đặt bằng cách đánh giá các luật ngữ nghĩa cho các thuộc tính trong cây phân tích cú pháp theo một thứ tự xác định trước. Ta dùng phép duyệt cây theo chiều sâu để đánh giá quy tắc ngữ nghĩa. Thì thứ tự duyệt cây sẽ là:
a)
A. Bắt đầu từ nút gốc, thăm lần lượt (đệ qui) các con của mỗi nút theo thứ tự từ trái sang phải.
b)
B. Bắt đầu từ nút con bên trái, thăm lần lượt (đệ qui) các con của mỗi nút theo thứ tự từ trái sang phải rồi lên nút gốc.
c)
C. Bắt đầu từ nút con bên phải, thăm lần lượt (đệ qui) các con của mỗi nút theo thứ tự từ trái sang phải rồi lên nút gốc.
d)
D. Bắt đầu từ nút gốc, thăm lần lượt (đệ qui) các con của mỗi nút theo thứ tự từ phải sang trái.
39.
Câu 39 : Văn phạm với các luật sinh A->aA; A → XYZ có bao nhiêu ký hiệu chưa kết thúc?
a)
A. 5
b)
B. 4
c)
C. 3
d)
D. 2
40.
Câu 40 : Văn phạm với các luật sinh A->aA; A → XYZ; A->b có bao nhiêu ký hiệu kết thúc?
a)
A. 5
b)
B. 4
c)
C. 3
d)
D. 2