Ngày soạn: 03/9/2007 Tiết theo PPCT: Tiết 1 Khái niệmlậptrìnhvàngônngữlậptrình I. Mục tiêu - Biết đợc khái niệmlậptrìnhvàngônngữlậptrình - Biết đợc kháiniệm chơng trình dịch - Phân biệt đợc hai loại chơng trình dịch là biên dịch và thông dịch II. đồ dùng dạy học 1. Chuẩn bị của giáo viên Bảng viết, SGK, phiếu học tập 2. Chuẩn bị của học sinh Sách giáo khoa III. Hoạt động dạy học 1. Hoạt động 1: Tìm hiểu kháiniệmngônngữlậptrình a. Mục tiêu: - Giúp học sinh biết đợc kháiniệmlậptrình là gì. ý nghĩa của việc lậptrình - Biết đợc kháiniệmngônngữlậptrìnhvà một số loại ngônngữlậptrình b. Nội dung: Mọi bài toán đều có thuật toán để giải trên máy tính điện tử + Xác định bài toán + Xây dựng thuật toán + LậptrìnhLậptrình là việc sử dụng cấu trúc dữ liệu và các lệnh của một ngônngữlậptrình cụ thể để mô tả dữ liệu và diễn đạt các thao tác của thuật toán Ngônngữlậptrình là một phần mềm dùng để diễn đạt thuật toán thành một chơng trình giúp cho máy tính hiểu đợc thuật toán đó Một số loại ngônngữlập trình: Ngônngữ máy, hợp ngữvàngônngữ bậc cao c. Các bớc tiến hành: Hoạt động của giáo viên Hoạt động của học sinh 1. Chiếu nội dung bài toán đặt vấn đề: Kết luận nghiệm của phơng trình: ax + b = 0 - Hãy xác định Input và Output của bài toán? - Hãy xác định các bớc để tìm Output? - Diễn giải: Hệ thống các bớc này đợc gọi là thuật toán - Nếu trình bày thuật toán với một ngời nớc ngoài, em sẽ dùng ngônngữ nào để diễn đạt? - Nếu diễn đạt thuật toán này cho máy hiểu, em sẽ dùng ngônngữ nào? - Diễn giải: Hoạt động để diễn đạt một thuật toán thông qua một ngônngữlậptrình đợc gọi là lậptrình - Yêu cầu học sinh đọc SGK và cho biết khái niệmlậptrình - Hỏi: kết quả của hoạt động lập trình? 2. Phát phiếu học tập. Yêu cầu các em ghi các loại ngônngữlậptrình mà em biết (sử dụng kĩ thuật động não để viết) 1. Quan sát nội dung bài toán và theo dõi yêu cầu của giáo viên - Input: a, b, - - Output: x=-b/a, Vô nghiệm, VSN Bớc 1: Nhập a, b Bớc 2: Nếu a<>0, kết luận có nghiệm x=-b/a Bớc 3: Nếu a = 0 và b<>0, kết luận VN Bớc 4: Nếu a = 0 và b=0, kết luận VSN - Ngônngữ tiếng Anh - Em dùng ngônngữlậptrình - Lậptrình là việc sử dụng cấu trúc dữ liệu và các lệnh của một ngônngữlậptrình cụ thể để mô tả dữ liệu và diễn đạt các thao tác của thuật toán - Ta đợc một chơng trình 2. Tham khảo SGK và sử dụng vốn hiểu biết về tin học để điền vào phiếu học tập. - Ngônngữ máy - Đọc nội dung một số phiếu học tập cho cả lớp nghe - Hỏi: Em hiểu nh thế nào về ngônngữ máy, hợp ngữvàngônngữ bậc cao? - Hợp ngữ - Ngônngữ bậc cao - Ngônngữ máy: các lệnh đợc mã hoá thành các kí hiệu 0-1. Chơng trình đợc viết trên ngônngữ máy có thể đợc nạp vào bộ nhớ và thực hiện ngay - Hỏi: Làm thế nào để chuyển một chơng trình viết từ ngônngữ bậc cao sang ngônngữ máy? - Hỏi: Vì sao không lậptrình trên ngônngữ máy để khỏi mất công chuyển đổi mà ngời ta thờng lậptrình bằng ngônngữ bậc cao? - Hợp ngữ: Là ngônngữ có sự kết hợp giữa ngônngữ máy vàngônngữ tự nhiên - Ngônngữ bậc cao: Các lệnh đợc mã hoá bằng một ngônngữ gần với ngônngữ tiến Anh. Chơng trình viết trên ngônngữ bậc cao phải đợc chuyển đổi thành chơng trình trên ngônngữ máy mới có thể thực hiện đ- ợc trên máy - Phải sử dụng một chơng trình dịch để chuyển đổi - Lậptrình bằng ngônngữ bậc cao dễ viết hơn vì các lệnh đợc mã hoá gần với ngônngữ tự nhiên. Lậptrình trên ngônngữ máy rất khó 2. Hoạt động 2: Tìm hiểu hai loại chơng trình dịch: thông dịch và biên dịch a. Mục tiêu: - Học sinh biết đợc kháiniệm chơng trình dịch và sự cần thiết của chơng trình dịch - Phân biệt đợc thông dịch và biên dịch b. Nội dung: - Chơng trình dịch là một chơng trình có chức năng chuyển đổi một chơng trình viết bằng hợp ngữ hoặc ngônngữ bậc cao sang ngônngữ máy - Đầu vào của chơng trình dịch là một chơng trình đợc viết bằng hợp ngữ hoặc ngônngữ bậc cao. Đầu ra cũng là một chơng trình nhng đợc viết bằng ngônngữ máy - Biên dịch: Kiểm tra, phát hiện lỗi và dịch toàn bộ chơng trình nguồn thành một chơng trình đích - Thông dịch: lần lợt dịch và thực hiện từng lệnh một c. Các bớc tiến hành: Hoạt động của giáo viên Hoạt động của học sinh 1. Nêu vấn đề: Em muốn giới thiệu về trờng mình cho một ngời khách du lịch quốc tế biết tiếng Anh, có hai cách để thực hiện 1. Chú ý lắng nghe ví dụ của giáo viên và thảo luận để tìm ra ví dụ tơng tự Cách 1: Cần một ngời biết tiếng Anh, dịch từng câu nói của em sang tiếng Anh cho ng- ời khách Cách 2: Em soạn nội dung cần giới thiệu ra giấy và ngời phiên dịch dịch toàn bộ nội dung đó sang tiếng Anh rồi đọc cho ngời khách - Hãy lấy ví dụ tơng tự trong thực tế về biên dịch và thông dịch từ tiếng Anh sang tiếng Viết 2. Yêu cầu học sinh nghiên cứu SGK và sử dụng các ví dụ trên để cho biết các bớc trong tiến trình thông dịch và biên dịch - Khi thủ tớng chính phủ trả lời phỏng vấn trớc một nhà báo quốc tế, họ thờng cần một ngời thông dịch để dịch từng câu tiếng Việt sang tiếng Anh - Khi thủ tớng đọc một bài diễn văn tiếng Anh trớc Hội nghị, họ cần một ngời biên dịch để chuyển văn bản tiếng Việt thành tiếng Anh 2. Nghiên cứu SGK và suy nghĩ để trả lời - Biên dịch: Bớc 1: Duyệt, phát hiện lỗi, kiểm tra tính đúng đắn của lệnh trong chơng trình nguồn Bớc 2: Dịch toàn bộ chơng trình nguồn thành một chơng trình trên ngônngữ máy (thuận tiện cho các chơng trình ổn định và cần thực hiện nhiều lần) - Thông dịch: Bớc 1: Kiểm tra tính đúng đắn của lệnh tiếp theo tiếp theo trong chơng trình nguồn Bớc 2: Chuyển lệnh đó thành ngônngữ máy Bớc 3: Thực hiện các câu lệnh vừa đợc chuyển đổi (phù hợp với môi trờng đối thoại gia ngời và m¸y) IV. đánh giá cuối bài 1. Những nội dung đã học - Khái niện lập trìnhvàngônngữlậptrình - Có ba loại ngônngữlập trình: Ngônngữ máy, hợp ngữvàngônngữ bậc cao - Kháiniệm chơng trình dịch - Có hai loại chơng trình dịch là biên dịch và thông dịch 2. Câu hỏi vàbài tập về nhà - Mỗi loại ngônngữlậptrình phù hợp với những ngời lậptrình có trình độ nh thế nào? - Kể tên một số ngônngữlậptrình bậc cao có sử dụng kĩ thuật biên dịch và một số ngônngữlậptrình có sử dụng kĩ thuật thông dịch - Trả lời câu hỏi 1, 2, 3 SGK trang 13 - Xem bài đọc thên 1: Em biết gì về các ngônngữlập trình? SGK trang 6 - Xem trớc bài học: Các thành phần của ngônngữlậptrình . PPCT: Tiết 1 Khái niệm lập trình và ngôn ngữ lập trình I. Mục tiêu - Biết đợc khái niệm lập trình và ngôn ngữ lập trình - Biết đợc khái niệm chơng trình dịch. bài 1. Những nội dung đã học - Khái niện lập trình và ngôn ngữ lập trình - Có ba loại ngôn ngữ lập trình: Ngôn ngữ máy, hợp ngữ và ngôn ngữ bậc cao - Khái