Tin học lớp 11 bài 1

Tin học lớp 11 bài 1

I/- Mục đích, yêu cầu.

1. Về kiến thức.

- Hiểu khả năng của ngôn ngữ lập trình bậc cao, phân biệt với ngôn ngữ máy và hợp ngữ.

- Hiểu ý nghĩa và nhiệm vụ của chương trình dịch. Phân biệt được biên dịch và thông dịch.

2. Về kỹ năng.

- Học sinh nhận thức được những điều kiện cần thiết để có thể học ngôn ngữ lập trình.

II/- Phương pháp và phương tiện dạy học.

1. Phương pháp dạy học.

- Phương pháp đàm thoại, phương pháp diễn giảng.

2. Phương tiện dạy học.

- Giáo án, SGK.

Bạn đang xem tài liệu "Giáo án Tin học 11 - Bài 1: Khái niệm lập trình và ngôn ngữ lập trình", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

TUẦN 1 TIẾT 1 Ngày soạn: 28-07-2010 CHƯƠNG I: MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH. BÀI 1: KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH. I/- Mục đích, yêu cầu. Về kiến thức. Hiểu khả năng của ngôn ngữ lập trình bậc cao, phân biệt với ngôn ngữ máy và hợp ngữ. Hiểu ý nghĩa và nhiệm vụ của chương trình dịch. Phân biệt được biên dịch và thông dịch. Về kỹ năng. Học sinh nhận thức được những điều kiện cần thiết để có thể học ngôn ngữ lập trình. II/- Phương pháp và phương tiện dạy học. Phương pháp dạy học. Phương pháp đàm thoại, phương pháp diễn giảng. Phương tiện dạy học. Giáo án, SGK... III/- Tiến trình dạy học. Ổn định lớp. Tiến trình lên lớp. HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS NỘI DUNG BÀI HỌC - Giới thiệu sơ bộ về nội dung của môn Tin học trong lớp 11. Dẫn dắt học sinh vào khái niệm lập trình và ngôn ngữ lập trình. - Vậy thì lập trình là gì? - Cho ví dụ về một số ngôn ngữ lập trình? - Có rất nhiều ngôn ngữ lập trình, nhưng đối với chương trình lớp 11 thì chúng ta sẽ nghiên cứu về ngôn ngữ lập trình là Turbo Pascal... - Phân biệt ngôn ngữ bậc cao với các ngôn ngữ lập trình khác? - Tại sao người ta phải xây dựng các thuật toán dựa trên ngôn ngữ bậc cao? - Khi lập trình bằng ngôn ngữ bậc cao thì sử dụng ngôn ngữ thường ngày của chúng ta, nhưng máy tính có thể hiểu được ngôn ngữ đó không. Đưa ra khái niệm về chương trình dịch. - Thế nào là chương trình dịch? - Giải thích rõ hơn về vai trò của chương trình dịch. - Chương trình dịch có những loại nào? - GV giải thích cụ thể cho từng loại Thông dịch và Biên dị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. Pascal, C, C++, Java, VisualBasic... - Ngôn ngữ bậc cao là sử dụng ngôn ngữ hằng ngày của chúng ta, đưa vào máy tính để máy tính thực hiện. Còn các ngôn ngữ khác sử dụng ngôn ngữ của máy để thực hiện giải toán. - Thuận tiện cho người lập trình. - Chương trình viết bằng ngôn ngữ bậc cao không phụ thuộc vào phần cứng máy tính. - Chương trình viết bằng ngôn ngữ bậc cao dễ hiểu, dễ hiệu chỉnh. - Có thể làm việc với nhiều kiểu dữ liệu và cách tổ chức đa dạng, thuận tiện cho mô tả bài toán... - Chương trình đặc biệt có chức năng chuyển đổi chương trình được viết bằng ngôn ngữ bậc cao thành chương trình thực được trên máy tính được gọi là chương trình dịch. - Thông dịch và biên dịch. CHƯƠNG I: MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH. BÀI 1: KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH. Khái niệm 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 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. - Ví dụ: Pascal, C, C++... Chương trình dịch. - Chương trình đặc biệt có chức năng chuyển đổi chương trình được viết bằng ngôn ngữ bậc cao thành chương trình thực được trên máy tính được gọi là chương trình dịch. - Chương trình dịch gồm hai loại: Thông dịch và biên dịch.. Thông dịch (interpreter). - Đượ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. + 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. Biên dịch (compiler). - Được thực hiện qua hai bước. + Duyệt, 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. Củng cố. Nhấn mạnh lại các khái niệm lập trình. Phân biệt ngôn ngữ bậc cao với các loại ngôn ngữ khác. Phân biệt thông dịch và biên dịch. Dặn dò. Về nhà học bài và xem trước bài 2 Các thành phần của ngôn ngữ lập trình.

Tài liệu đính kèm:

  • Tin học lớp 11 bài 1
    Giao an Bai 1.doc

Tin học lớp 11 bài 1

1. Tóm tắt lý thuyết

1.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 để diễn tả thuật toán sao cho máy tính hiểu và thực hiện được.

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

- Có 3 loại ngôn ngữ lập trình:

  • Ngôn ngữ máy: Bao gồm các kệnh được mã hóa bằn các kí hiêu 0- 1. Chương trình được viết trên ngôn ngữ máy có thể được nạp vào bộ nhớ và thực hiện ngay. Đây là ngôn ngữ duy nhất mà máy tính có thể trực tiếp hiểu và xử lí được.

  • Hợp ngữ: Là loại ngôn ngữ sử dụng một số từ để thực hiện lệnh trên thanh ghi. Hơp ngữ sử dụng các từ viết tắt tiếng anh để diễn tả câu lệnh.

  • 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.

- 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ịch

- 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

- 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:

  • 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 các 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.

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:

  • 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 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à  lưu trữ lại để sử dụng về 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ọa

Câ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ập

3.1. Bài tập tự luận

Câ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ệm

Câ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ận

Qua bài học này, các em cần nắm được những nội dung sau:

  • Nắm được khái niệm và cách phân loại lập trình và ngôn ngữ lập trình.

  • Nắm được khái niệm và cách phân loại chương trình dịch.