1. Tóm tắt lý thuyết1.1.Khái niệm lập trình,ngôn ngữ lập trình
1.2. Phân loại ngôn ngữ lập trìnhCó 3 loại ngôn ngữ lập trình:
Lập trình là việc sử dụng cấu trúc dữ liệu và các 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. 1.3. Chương trình dịchChươ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 dịch được chia thành hai loại: Thông dịch và biên dịch + Thông dịch:Thực hiện lặp đi lặp lại dãy các bước sau:
Thông dịch phù hợp với môi trường đối thoại giữ người và máy. + Biên dịch:Thực hiện qua hai bước sau:
Biên dịch thuận tiện cho các chương trình ổn định và cần thực hiện nhiều lần. 2. Bài tập minh họaCâu 1:Trong chế độ biên dịch, một chương trình đã được dịch thông suốt, hệ thống không báo lỗi. Có thể khẳng định rằng ta đã có một chương trình đúng hay chưa? Tại sao? Hướng dẫn giải Không thể khẳng định chương trình đúng vì chương trình có thể vẫn còn chứa lỗi ngữ nghĩa. Câu 2:Trong chế độ thông dịch, giả sử hai phần ba số câu lệnh trong chương trình đã được thự hiện. Có thể khẳng định rằng chương trình không còn chứa lỗi cú pháp nữa hay không? Tại sao? Hướng dẫn giải Không thể khẳng định. Cú pháp của các câu lệnh chưa thực hiện chưa được kiểm tra. 3. Luyện tập3.1. Bài tập tự luậnCâu 1:Hãy nêu sự khác biệt giữa 2 loại của chương trình dịch là biên dịch và thông dịch? Câu 2: Chương trình dịch là gì? Tại sao cần phải có chương trình dịch? 3.2. Bài tập trắc nghiệmCâu 1:Hãy chọn phương án ghép đúng. Ngôn ngữ máy là A.Bất cứ ngôn ngữ lập trình nào mà có thể diễn đạt thuật toán để giao cho máy tính thực hiện B.Ngôn ngữ để viết các chương trình mà mỗi chương trình là một dãy lệnh máy trong hệ nhị phân C.Các ngôn ngữ mà chương trình viết trên chúng sau khi dịch ra hệ nhị phân thì máy có thể chạy được D.Diễn đạt thuật toán để có thể giao cho máy tính thực hiện Câu 2:Hãy chọn phương án ghép sai. Ngôn ngữ lập trình bậc cao là ngôn ngữ A.Thể hiện thuật toán theo những quy ước nào đó không phụ thuộc vào các máy tính cụ thể B.Mà máy tính không hiểu trực tiếp được, chương trình viết trên ngôn ngữ bậc cao trước khi chạy phải dịch sang ngôn ngữ máy C.Có thể diễn đạt được mọi thuật toán D.Sử dụng từ vựng và cú pháp của ngôn ngữ tự nhiên (tiếng Anh) Câu 3: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 Câu 4:Hãy chọn phương án ghép đúng. Ngôn ngữ lập trình là ngôn ngữ A.Cho phép thể hiện các dữ liệu trong bài toán mà các chương trình sẽ phải xử lí B.Dưới dạng nhị phân để máy tính có thể thực hiện trực tiếp C.Diễn đạt thuật toán để có thể giao cho máy tính thực hiện D.Có tên là ngôn ngữ thuật toán hay còn gọi là ngôn ngữ lập trình bậc cao gần với ngôn ngữ toán học cho phép mô tả cách giải quyết vấn đề độc lập với máy tính Câu 5:Hãy chọn phương án ghép đúng. Hợp ngữ là ngôn ngữ A.Mà máy tính có thể thực hiện được trực tiếp không cần dịch B.Có các lệnh được viết bằng kí tự nhưng về cơ bản mỗi lệnh tương đương với một lệnh máy . Để chạy được cần dịch ra ngôn ngữ máy C.Mà các lệnh không viết trực tiếp bằng mã nhị phân D.Không viết bằng mã nhị phân, được thiết kế cho một số loại máy có thể chạy trực tiếp dưới dạng kí tự 4. Kết luậnQua bài học này, các em cần nắm được những nội dung sau: |