Chương trình dịch là gì tại sao phải có

Chương trình dịch dùng để dịch từ ngôn ngữ lập trình sang ngôn ngữ máy, chương trình dịch là chương trình đặc biệt có chức năng chuyển đổi chương trình được 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 cụ thể.

Show

Giải thích nguyên nhân lựa chọn đáp án B:

Chương trình dịch hay phần mềm biên dịch là một chương tình máy tính làm công việc dịch một chuỗi các câu lệnh được viết bằng một ngôn ngữ lập trình, thành một chương trình tương đương nhưng ở dưới dạng một ngôn ngữ máy tính mới và thường là ngôn ngữ ở cấp thấp hơn như ngôn ngữ máy.

Những đặc điểm của chương trình dịch bao gồm:

– Tính chịu lỗi. Chương trình có thể chấp nhận một lỗi của đầu vào và đưa ra các gợi úc xử lý phù hợp. Chương trình dừng ngay ở lỗi đầu tiên không thể coi là tốt.

– Tính toàn vẹn là kết quả ở ngôn ngữ đích phải hoàn toàn tương đương với đầu vào viết ở ngôn ngữ nguồn.

– Tính trong suốt chương trình dịch phải rõ ràng về kết quả sau từ bước thực hiện, giúp người dùng có thể hiệu chỉnh và sửa lỗi nếu có sau từng bước thực hiện.

– Tính hiệu quả là chương trình dịch sử dụng không quá nhiều bộ nhớ và công suất tính toán, kết quả ở ngôn ngữ đích là đủ tốt.

Các giai đoạn chương trình dịch phải trải qua bao gồm:

– Giai đoạn phân tích nhằm phân tích chương trình nguồn về từ vựng và cú pháp.

– Giai đoạn tổng hợp nhằmg tạo ra chương trình đích gồm ba bước, bao gồm:

+ Sinh mã trung gian là chuyển chương trình nguồn về chương trình trung gian.

+ Tối ưu mã là chỉnh sửa, tối ưu chương trình trung gian.

+ Sinh mã là tạo chương trình đích từ chương trình trung gian đã tối ưu.

– Các trình biên dịch sẽ chuyển dịch mã nguồn viết trong một ngôn ngữ cấp cao thành mã đối tương hay ngôn ngữ máy mà có thể được thi hành trực tiếp bởi một máy tính hay bởi một máy ảo. Việc chuyển dịch từ một ngôn ngữ cấp thấp sang một ngôn ngữ cấp cao hơn cũng có thể xảy ra, quá trình này thường được hiểu như là bộ biên dịch ngược nếu nó có thể tái tạo lại một chương trình trong ngôn ngữ cấp cao.

– Tồn tại các trình biên dịch chuyển đổi từ ngôn ngữ cao này sang ngôn ngữ cao khác hay là chuyển đổi sang một ngôn ngữ mà nó cần để tiếp tục xử lý về sau những trình biên dịch như vậy được biết như là bộ biên dịch phân tầng. Các loại trình biên dịch cho kết quả là mã đối tượng thì một cách cơ bản bao gồm mã máy tăng cường thêm các thông tin về tên vị trí của các ngõ và các gọi ngoài.

– Một tập hợp của các tập tin đối tượng mà không hẳn được cung cấp từ cùng một trình biên dịch thì vẫn có thể được liên kết với nhau để tạo nên các chương trình khả thi cuối cùng cho một người dùng. Để làm được điều đó thì các tập tin đối tượng đó phải được thiết kế chung nhau về dạng thức.

Như vậy, Chương trình dịch dùng để làm gì? Là câu hỏi đã được chúng tôi trả lời chi tiết trong bài viết phía trên. Chúng tôi mong rằng nội dung trong bài viết sẽ giúp ích được quý bạn đọc.

- Trình biên dịch duyệt, kiểm tra, phát hiện lỗi, xác định chương trình nguồn có dịch được không. 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ữ lại để sử dụng về sau khi cần thiết.

Trình thông dịch lần lượt dịch từng câu lệnh ra ngôn ngữ máy rồi thực hiện ngay câu lệnh vừa dịch được hoặc thông báo lỗi nếu không dịch được.

Tầng 2, số nhà 541 Vũ Tông Phan, Phường Khương Đình, Quận Thanh Xuân, Thành phố Hà Nội, Việt Nam

Phone: 084 283 4585

Email: [email protected]

Viết chương trình nhập số nguyên n(n<=65000). In ra màn hình số chính phương nhỏ nhất nhưng lớn hơn n.Nếu n là số chính phương thì in ra n?

viết chương trình nhập số nguyên n(n<=65000).In ra màn hình số chính phương nhỏ nhất nhưng lớn hơn n.Nếu n là số chính phương thì in ra n

16/11/2022 | 0 Trả lời

  • Viết chương trình Pascal nhập số n từ bàn phím. Xuất ra màn hình:

    + Các ước của n + Số lượng các ước của n + Tổng các ước của n + Xét tổng đó có phải là số hoàn hảo? 29/11/2022 | 0 Trả lời
  • Viết chương trình nhập vào chiều, chiều rông hình chữ nhật và nhập vào cạnh của hình vuông. Thông báo ra màn hình diện tích hình nào lớn hơn.

    Viết chương trình nhập vào chiều, chiều rông hình chữ nhật và nhập vào cạnh của hình vuông. Thông báo ra màn hình diện tích hình nào lớn hơn. 30/11/2022 | 0 Trả lời
  • Viết chương trình nhập 3 số a,b,h hãy biết só lớn nhất trong 3 số đó

    vViết chương trình nhập 3 số a,b,h hãy biết só lớn nhất trong 3 số đó 07/12/2022 | 0 Trả lời
  • viết chương trình nhập vào hai số a,b .kiểm tra xem a ,b là số âm hay dương,chẳn hay lẻ.kiểm tra xem a có chia hết cho b hay không.kiểm tra xem a,b có chia hết cho 3 hay không

    viết chương trình nhập vào hai số a,b .kiểm tra xem a ,b là số âm hay dương,chẳn hay lẻ.kiểm tra xem a có chia hết cho b hay không.kiểm tra xem a,b có chia hết cho 3 hay không 07/12/2022 | 0 Trả lời
  • Tìm input, output và mô tả thuật toán bài sau: xác định một số tự nhiên x bất kì để chứng minh là số chẵn không?

    Tìm input, output và mô tả thuật toán bài sau: xác định một số tự nhiên x bất kì để chứng minh là số chẵn không? 09/12/2022 | 0 Trả lời
  • Viết chương trình Pascal nhập số từ bàn phím. Xuất ra màn hình:

    + Tính n! + Nhập số x từ bàn phím.Tính nx 14/12/2022 | 0 Trả lời
  • Viết chương trình giải phương trình bậc nhất ax=b. Với a, b nhập từ bàn phím.

    viết chương trình giải phương trình bậc nhất ax=b.Với a,b nhập bằng bàn phím Tin 17/12/2022 | 0 Trả lời
  • Cho x và y là 2 độ dài 2 cạnh của một hình chữ nhật. Viết chương trình so sánh 2 giá trị x, y và thông báo nó là hình vuông hay hình chữ nhật thường.

    Cho x và y là 2 độ dài 2 cạnh của một hình chữ nhật. Viết chương trình so sánh 2 giá trị x, y và thông báo nó là hình vuông hay hình chữ nhật thường 18/12/2022 | 0 Trả lời
  • Tại sao nguười ta không viết chương trình bằng ngôn ngữ máy?

    tại sao nguười ta không viết chương trình bằng ngôn ngữ máy? 19/12/2022 | 0 Trả lời
  • Nêu cú pháp khai báo biến cho ví dụ khai báo bến trong pascal?

    cú pháp khai báo biến cho ví dụ khai báo bến trong pascal 20/12/2022 | 0 Trả lời
  • Xác định bài toán input output của bài toán tính quãng đường tào hỏa đi được trong thời gian t vận tốc v?

    tính quãng đường tào hỏa đi được trong thời gian t vận tốc v 21/12/2022 | 0 Trả lời
  • Em hãy xác định INPUT, OUTPUT và mô tả thuật toán của bài toán nhập vào 2 số nguyên dương a, b và in ra kết quả số a nếu a lớn hơn b và ngược lại in kết quả b. (Ví dụ : nhập 20, 9 in ra 20 ngược lại nhập 9,20 in ra 20).

    Em hãy xác định INPUT, OUTPUT và mô tả thuật toán của bài toán nhập vào 2 số nguyên dương a, b và in ra kết quả số a nếu a lớn hơn b và ngược lại in kết quả b. (Ví dụ : nhập 20, 9 in ra 20 ngược lại nhập 9,20 in ra 20). 25/12/2022 | 0 Trả lời
  • Viết chương trình hoàn chỉnh sử dụng câu lệnh điều kiện thực hiện nhập từ bàn phím giá trị của biến nguyên a và kiểm tra nếu a là số lẻ thì tính và in ra màn hình diện tích hình vuông với độ dài cạnh là 2a không thì đi tính chu vi hình vuông với độ dài cạnh là 2a? Mô tả lại thuật toán giải bài toán.

    Viết chương trình hoàn chỉnh sử dụng câu lệnh điều kiện thực hiện nhập từ bàn phím giá trị của biến nguyên a và kiểm tra nếu a là số lẻ thì tính và in ra màn hình diện tích hình vuông với độ dài cạnh là 2a không thì đi tính chu vi hình vuông với độ dài cạnh là 2a? Mô tả lại thuật toán giải bài toán trên 28/12/2022 | 0 Trả lời
  • Viết chương trình nhập vào một số nguyên a bất kỳ. Kiểm tra xem số a là số chẵn hay số lẻ. Nếu là số chẵn, tăng giá trị của a thêm 10 đơn vị; Nếu là số lẻ, giảm giá trị của a 10 đơn vị.

    Viết chương trình nhập vào một số nguyên a bất kỳ. Kiểm tra xem số a là số chẵn hay số lẻ. Nếu là số chẵn, tăng giá trị của a thêm 10 đơn vị; Nếu là số lẻ, giảm giá trị của a 10 đơn vị. 30/12/2022 | 0 Trả lời
  • Viết chương trình tính công thức: C=2/3*3/4*4/5....*n/n+1 (n>0)

    viết công thức tính C=2/3*3/4*4/5....*n/n+1 (n>0) 31/01/2023 | 0 Trả lời
  • Viết chương trình tính tổng: S=1+3+5+...+999

    Viết chương trình tính tổng: S=1+3+5+...+999 09/02/2023 | 0 Trả lời
  • Viết chương trình tính tổng sau:

    S=1+1/2^2+1/3^2+...+1/n^2. Trong đó N là một số nguyên được nhập vào từ bàn phím. S là tổng các phân số từ 1 đến n, sau khi tính toán tổng S được xuất ra màn hình. 09/02/2023 | 0 Trả lời
  • Sử dụng câu lệnh lặp để viết chương trình tính tổng 1x2+2x3+3x4+...+n(n+1).

    Sử dụng câu lệnh lặp để viết chương trình tính tổng 1x2+2x3+3x4+...+n(n+1) 24/02/2023 | 0 Trả lời
  • Viết chương trình tính tổng S=1+2+3+.... đến khi S lớn hơn 250 thì dừng. In ra màn hình giá trị tổng S vừa tính và cho biết giá trị cuối cùng được cộng là bao nhiêu?

    Viết chương trình tính tổng S=1+2+3+.... đến khi S lớn hơn 250 thì dừng. In ra màn hình giá trị tổng S vừa tính và cho biết giá trị cuối cùng được cộng là bao nhiêu? 05/03/2023 | 0 Trả lời
  • Viết chương trình nhập vào 4 số tự nhiên và sắp xếp sau đó in ra màn hình kết quả.

    Viết chương trình nhập vào 4 số tự nhiên và sắp xếp sau đó in ra màn hình kết quả. 09/03/2023 | 0 Trả lời
  • Cho dãy n số nguyên tính tổng các phần tử của dãy và cho biết phần tử nào lớn nhất trong dãy. Hãy viết chương trình bằng pascal?

    cho dãy n số nguyên tính tổng các phần tử của dãy và cho biết phần tử nào lớn nhất trong dãy. Hãy viết chương trình bằng pascal?