Chọn đáp án đúng nhất ngôn ngữ máy chủ yếu được dùng để lập trình

Trắc nghiệm: Phát biểu nào dưới đây là đúng trong các phát biểu dưới đây?

A. Mỗi ngôn ngữ lập trình bậc cao đều có đúng một chương trình dịch

B. Chương trình dịch gồm hợp dịch, thông dịch, biên dịch

C. Máy tính chỉ nhận biết được kí tự 0 và kí tự 1 nên chương trình bằng ngôn ngữ máy cũng phải được dịch sang mã nhị phân

D. Một ngôn ngữ lập trình bậc cao có thể có nhiều chương trình dịch khác nhau

Trả lời: 

Đáp án đúng D. Một ngôn ngữ lập trình bậc cao có thể có nhiều chương trình dịch khác nhau

Giải thích:

Một ngôn ngữ lập trình bậc cao có thể có nhiều chương trình dịch khác nhau như thông dịch và biên dịch. Bất kì một chương trình được viết bằng ngôn ngữ nào đều phải dịch sang ngôn ngữ máy.

Tìm hiểu về khái niệm ngôn ngữ lập trình cùng THPT Đông Thụy Anh nhé!

1. Khái niệm lập trình, ngôn ngữ lập trình

– Lập trình là sử dụng cấu trúc dữ liệu và các câu lệnh của một ngôn ngữ lập trình cụ thể để mô phỏng dữ liệu và diễn đạt các thao tác của thuật toán

– Ngôn ngữ lập trình là ngôn ngữ dùng để viết chương trình

2. Chương trình dịch

a. Khái niệm

– Chương trình có chức năng chuyển đổi chương trình viết trên 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 tính gọi là chương trình dịch

Trong đó:

+ Chương trình nguồn: Là chương trình viết trên ngôn ngữ lập trình bậc cao

+ Chương trình đích: Là chương trình nguồn được chuyển đổi sang ngôn ngữ máy nhờ chương trình dịch

b. Phân loại:

– Chương trình dịch có 2 loại: thông dịch và biên dịch.

– Thông dịch [Interpret] được thực hiện bằng cách lặp lại dãy các bước sau:

+ Kiểm tra tính đúng đắn của câu lệnh tiếp theo trong chương trình nguồn;

+ Chuyển đổi câu lệnh đó thành một hay nhiều câu lệnh tương ứng trong ngôn ngữ máy;

+ Thực hiện các câu lệnh vừa chuyển đổi được.

Như vậy, quá trình dịch và thực hiện các câu lệnh là luân phiên. Các chương trình thông dịch lần lượt dịch và thực hiện từng câu lệnh. Nó thích hợp cho môi trường đối thoại giữa người và hệ thống, được ứng dụng cho các ngôn ngữ khai thác hệ quản trị cơ sở dừ liệu, ngôn ngữ đối thoại với hệ điều hành,..

– Biên dịch [compile] được thực hiện qua hai bước:

+ Duyệt, kiểm tra, phát hiện lỗi, kiếm tra tính đúng đắn của các câu lệnh trong chương trình nguồn;

+ Dịch toàn bộ chương trình nguồn thành một chương trình đích có thể thực hiện trên máy và có thể lưu trữ để sử dụng lại khi cần thiết.

Như vậy, trong thông dịch, không có chương trình đích để lưu trữ, trong biên dịch cả chương trình nguồn và chương trình đích đều có thể lưu trữ lại để sử dụng về sau. Nó được ứng dụng vào việc biên soạn, lưu trữ, tìm kiếm, cho biết các kết quả trung gian,.. Toàn bộ các dịch vụ trên tạo thành một môi trường làm việc trên một ngôn ngữ lập trình cụ thể.

Ví dụ, Turbo Pascal 7.0, Free Pascal 1.2, Visual Pascal 2.1 …. trên ngôn ngữ Pascal, Turbo C++, Visual C++,…

3. Phân loại ngôn ngữ lập trình

– Ngôn ngữ lập trình được chia thành ba loại:

+ Ngôn ngữ máy: Ngôn ngữ duy nhất máy có thể trực tiếp hiểu và thực hiện

+ Hợp ngữ: Rất gần với ngôn ngữ máy, nhưng mã lệnh được thay bằng tên viết tắt của thao tác [thường là tiếng Anh]

+ Ngôn ngữ bậc cao: Gần với ngôn ngữ tự nhiên, có tính độc lập cao, ít phụ thuộc vào loại máy và chương trình phải dịch sang ngôn ngữ máy mới thực hiện được

4. Bài tập trắc nghiệm

Câu 1: Hãy chọn phương án ghép phù hợp nhất. Ngôn ngữ lập trình là gì?

A. Phương tiện để soạn thảo văn bản trong đó có chương trình

B. Ngôn ngữ Pascal hoặc C

C. Phương tiện diễn đạt thuật toán để máy tính thực hiện công việc

D. Phương tiện diễn đạt thuật toán

Giải thích: Ngôn ngữ lập trình là ngôn ngữ để viết chương trình diễn đạt thuật toán giúp  máy tính hiểu và thực hiện.

Câu 2: Phát biểu nào dưới đây chắc chắn sai?

A. Lập trình là viết chương trình

B. Lập trình và chương trình là hai khái niệm tương đương, đều là cách mô tả thuật toán bằng ngôn ngữ lập trình

C. Chương trình được tạo thành từ tổ hợp các câu lệnh và các khai báo cần thiết về biến, hằng, hàm, …

D. Chương trình chưa chắc là đã đúng nếu cho kết quả đúng với rất nhiều bộ dữ liệu vào.

Giải thích:

+ Lập trình là sử dụng cấu trúc dữ liệu và các câu lệnh của ngôn ngữ lập trình cụ thể để mô tả dữ liệu và diễn đạt các thao tác của thuật toán. Hay lập trình chính là viết chương trình.

+ Chương trình được tạo thành từ tổ hợp các câu lệnh và các khai báo cần thiết về biến, hằng, hàm, …

→Lập trình và chương trình là hai không khái niệm tương đương⇒  Loại B.

Câu 3: Phát biểu nào sau đây chắc chắn sai?

A. Để giải bài toán bằng máy tính phải viết chương trình mô tả thuật toán giải bài toán đó

B. Mọi người sử dụng máy tính đều phải biết lập chương trình

C. Máy tính điện tử có thể chạy các chương trình

D. Một bài toán có thể có nhiều thuật toán để giải

Giải thích:

Lập chương trình là phải biết một hoặc một vài ngôn ngữ lập trình như: Pascal, C. C++…để viết trình. Việc học này thường rất khó và phức tạp vì vậy người sử dụng máy tính đơn thuần không nhất thiết phải biết lập trình mà chỉ việc biết thao tác đơn giản trên máy tính.

Câu 4: Phát biểu nào dưới đây là đúng trong các phát biểu dưới đây?

A. Mỗi ngôn ngữ lập trình bậc cao đều có đúng một chương trình dịch

B. Chương trình dịch gồm hợp dịch, thông dịch, biên dịch

C. Máy tính chỉ nhận biết được kí tự 0 và kí tự 1 nên chương trình bằng ngôn ngữ máy cũng phải được dịch sang mã nhị phân

D. Một ngôn ngữ lập trình bậc cao có thể có nhiều chương trình dịch khác nhau

Giải thích:

Một ngôn ngữ lập trình bậc cao có thể có nhiều chương trình dịch khác nhau như thông dịch và biên dịch. Bất kì một chương trình được viết bằng ngôn ngữ nào đều phải dịch sang ngôn ngữ máy.

Câu 5: Phát biểu nào không đúng trong các phát biểu dưới đây?

A. Chương trình dịch cho phép chuyển chương trình viết bằng một ngôn ngữ lập trình nào đó sang chương trình trên ngôn ngữ máy để máy có thể thực hiện được mà vẫn bảo toàn được ngữ nghĩa của chương trình nguồn

B. Chương trình dịch giúp người lập trình có thể lập trình trên một ngôn ngữ lập trình gần với ngôn ngữ tự nhiên hơn, do đó giảm nhẹ được nỗ lực lập trình, tăng cường hiệu suất lập trình

C. Chương trình dịch giúp tìm ra tất cả các lỗi của chương trình

D. Một ngôn ngữ lập trình có thể có cả chương trình thông dịch và chương trình biên dịch

Giải thích:

Mỗi chương trình viết bằng ngôn ngữ khác muốn máy tính thực hiện trên máy tính đều phải được dịch ra ngôn ngữ máy nhờ chương trình dịch. Chương trình dịch giúp người lập trình có thể lập trình trên một ngôn ngữ lập trình gần với ngôn ngữ tự nhiên hơn, do đó giảm nhẹ được nỗ lực lập trình, tăng cường hiệu suất lập trình. Có hai chương trình dịch: thông dịch và biên dịch.

Tác giả: Trường THPT Đông Thụy Anh

Chuyên mục: Giáo Dục

Video liên quan

Chủ Đề