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

3 158 0
Bài 1. Khái niệm lập trình và ngôn ngữ lập trình

Đang tải... (xem toàn văn)

Thông tin tài liệu

Ngày soạn: 03/9/2007 Tiết theo PPCT: Tiết 1 Khái niệm lập trình ngôn ngữ lập trình I. Mục tiêu - Biết đợc khái niệm lập trình ngôn ngữ lập trình - Biết đợc khái niệ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 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ái niệm ngôn ngữ lập trình a. Mục tiêu: - Giúp học sinh biết đợc khái niệm lập trình là gì. ý nghĩa của việc lập trình - Biết đợc khái niệm ngôn ngữ lập trình một số loại ngôn ngữ lập trì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ập trình Lập trình là việc sử dụng cấu trúc dữ liệu các lệnh của một ngôn ngữ lập trình cụ thể để mô tả dữ liệu diễn đạt các thao tác của thuật toán Ngôn ngữ lập trì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ôn ngữ lập trình: Ngôn ngữ máy, hợp ngữ ngôn ngữ 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 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ôn ngữ 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ôn ngữ nào? - Diễn giải: Hoạt động để diễn đạt một thuật toán thông qua một ngôn ngữ lập trình đợc gọi là lập trình - Yêu cầu học sinh đọc SGK cho biết khái niệm lập trì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ôn ngữ lập trì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 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 b<>0, kết luận VN Bớc 4: Nếu a = 0 b=0, kết luận VSN - Ngôn ngữ tiếng Anh - Em dùng ngôn ngữ lập trình - Lập trình là việc sử dụng cấu trúc dữ liệu các lệnh của một ngôn ngữ lập trình cụ Trường THPT Đức Linh Tiết PPCT 1:  Giáo án tin học 11 CHƯƠNG I: MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH NGÔN NGỮ LẬP TRÌNH §1 KHÁI NIỆM LẬP TRÌNH NGÔN NGỮ LẬP TRÌNH I MỤC TIÊU BÀI HỌC: Kiến thức: - Biết có ba lớp ngôn ngữ lập trình mức ngôn ngữ lập trình: Ngôn ngữ máy, hợp ngữ ngôn ngữ bậc cao - Biết vai trò chương trình dịch - Biết khái niệm biên dịch thông dịch Kĩ năng: Thái độ: II CHUẨN BỊ Giáo viên: Giáo án, Sách giáo khoa Học sinh: Sách giáo khoa, ghi III PHƯƠNG PHÁP DẠY HỌC: Thuyết trình + vấn đáp IV TIẾN TRÌNH BÀI HỌC: Ổn định lớp: Ổn định lớp, kiểm tra sỉ số Bài cũ: Không Bài mới: Hoạt động Giáo Viên Học Sinh Nội Dung * Hoạt động 1: Tìm hiểu khái niệm lập trình Khái niệm lập trình ngôn ngữ lập trình GV: Đặt câu hỏi 1: Em cho biết bước giải toán máy tính? HS: Suy nghĩ trả lời câu hỏi: xác định toán, lựa chọn thiết kế thuật toán GV: Phân tích câu trả lời học sinh Nhắc lại bước giải toán máy tính học lớp 10 HS: lắng nghe GV: Diễn giải phân tích đưa khái niệm lập trình HS: Nghe giảng ghi Lập trình sử dụng cấu trúc liệu câu lệnh ngôn ngữ lập trình cụ thể để mô tả liệu diễn đạt thuật toán GV: Đặt câu hỏi 2: Em cho biết có loại ngôn ngữ lập trình? HS: Trả lời câu hỏi giáo viên: Có loại ngôn ngữ lập trình: Ngôn ngữ máy, hợp ngữ ngôn ngữ bậc cao GV: Phân tích câu trả lời học sinh Mỗi loại máy có ngôn ngữ riêng, thường chương trình viết ngôn ngữ máy chạy máy Trường THPT Đức Linh  Giáo án tin học 11 Khi viết chương trình ngôn ngữ bậc cao muốn thi hành loại máy cần chuyển chương trình sang ngôn ngữ máy máy HS: Nghe giảng ghi Chương trình viết ngôn ngữ máy nạp trực tiếp vào nhớ thi hành Chương trình viết ngôn ngữ bậc cao nói chung không phụ thuộc loại máy, muốn thi hành phải chuyển sang ngôn ngữ máy GV: Đặt câu hỏi 3: Làm để chuyển chương trình viết ngôn ngữ bậc cao sang ngôn ngữ máy? HS trả lời: Cần phải có chương trình dịch GV: Nhận xét phân tích HS: Nghe giảng ghi Cần phải có chương trình dịch để chuyển chương trình viết ngôn ngữ lập trình bậc cao sang ngôn ngữ máy để máy thi hành * Hoạt động 2: Tìm hiểu loại chương trình Chương trình dịch có loại: Biên dịch dịch thông dịch GV: Đưa ví dụ : Bạn người tiếng Anh để bạn nói chuyện với người Anh hay đọc sách tiếng Anh? + Khi người làm phiên dịch người phải dịch nào? (Dịch câu người nói chuyện) + Khi người muốn dịch sách sang tiếng Việt làm nào? (Dịch toàn sách sang tiếng Việt để người đọc được) HS: Chú ý lắng nghe GV: Diễn giải, phân tích cho hs nhận biết thông dịch, biên dịch HS: Nghe giảng ghi + Biên dịch (Compiler): Thực bước sau:  Duyệt, kiểm tra, phát lỗi kiểm tra tính đắn câu lệnh chương trình nguồn  Dịch toàn chương trình nguồn thành chương trình đích (ngôn ngữ máy) để thực máy lưu trữ để sử Trường THPT Đức Linh  Giáo án tin học 11 dụng lại cần + Thông dịch (Interpreter): Dịch câu lệnh thực câu lệnh Thông dịch thực cách lặp lại dãy bước sau:  Kiểm tra tính đắn câu lệnh chương trình nguồn  Chuyển đổi câu lệnh thành hay nhiều câu lệnh ngôn ngữ máy  Thực câu lệnh vừa chuyển đổi Củng cố: - Khái niệm lập trình ngôn ngữ lập trình - Các ngôn ngữ lập trình: ngôn ngữ máy, ngôn ngữ bậc cao, hợp ngữ - Khái niệm chương trình dịch - Thông dịch biên dịch Hướng dẫn học sinh tự học nhà: - Trả lời câu hỏi 1, 2, sách giáo khoa trang 13 - Xem đọc thêm 1: Em biết ngôn ngữ lập trình? Sách giáo khoa trang - Xem trước học: Các thành phần ngôn ngữ lập trình V RÚT KINH NGHIỆM ………………………………………………………………………………………………………… ………………………………………………………………………………………………………… ………………………………………………………………………………………………………… Bµi 1 Gi¸o ¸n ®iÖn tö tin häc líp 8 1. Khái niệm lập trình Lập trình là sử dụng cấu trúc dữ liệu các câu lệnh của ngôn ngữ lập trình cụ thể để mô tả dữ liệu diễn đạt các thao tác của thuật toán. Cần diễn tả thuật toán bằng một ngôn ngữ sao cho maý tính có thể thực hiện được. Làm thế nào để máy tính hiểu thực hiện được thuật toán đã lựa chọn để giải bài toán? 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 thực hiện. 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 chương trình phải dịch sang ngôn ngữ máy mới thực hiện được. 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ữ lập trình có bao nhiêu loại nhỉ? Phân loại ngôn ngữ lập trình 1 0 1 0 1 1 1 1 1 0 1 1 1 1 0 1 0 0 1 1 1 0 1 1 0 1 0 0 1 0 1 0 1 0 1 1 0 0 1 1 1 1 0 1 1 1 1 0 1 0 input a input b load a add b move e print e halt end Ngôn ngữ dùng để viết chư ơng trình máy tính gọi là ngôn ngữ lập trình. 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. Chương trình nguồn Chương trình đích Chương trình dịch 2. Chương trình dịch * 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. Trong đó: INPUT OUTPUT Tình huống: Một thầy giáo chỉ biết tiếng Việt muốn giới thiệu về ngôi trường của mình cho một đoàn khách đến từ nước Anh. Theo em có mấy cách thực hiện điều trên? Phân loại chương trình dịch Hai kÜ thuËt dÞch: Th«ng dÞch  Biªn dÞch  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. Loại chương trình dịch này đặc biệt thích hợp cho môi trư ờng đối thoại giữa người dùng hệ thống. ( Các ngôn ngữ khai thác hệ quản trị cơ sở dữ liệu, đối thoại với hệ điều hành ) Thông dịch a Thực hiện lặp đi lặp lại dãy các bước sau 1 0 1 0 1 1 1 1 1 0 1 1 1 1 0 1 0 0 1 1 1 0 1 1 0 1 0 0 1 0 1 0 1 0 1 1 0 0 1 1 1 1 0 1 1 1 1 0 1 0 Biên dịch b 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 lưu trữ lại để sử dụng về sau. Loại chương trình dịch này thuận tiện cho các chương trình ổn định cần thực hiện nhiều lần. Thực hiện qua hai Tuần : . Tiết : 01 Ngày soạn: Ngày giảng: Chơng I: Một số khái niệm về lập trình ngôn ngữ lập trình Bài 1: Khái niệm lập trình ngôn ngữ lập trình I. Mục đích, yêu cầu: 1. Kiến thức: - Biết có ba lớp ngôn ngữ lập trình các mức của ngôn ngữ lập trình: ngôn ngữ máy, hợp ngữ ngôn ngữ bậc cao. - Biết vai trò của chơng trình dịch. - Biết khái niệm biên dịch thông dịch. 2. Kĩ năng: - Phân biệt đợc biên dịch thông dịch - Hiểu đợc nhiệm vụ quan trọng của Chơng trình dịch là phát hiện lỗi cú pháp của Chơng trình nguồn. 3. T duy: Rèn luyện cho học sinh t duy linh hoạt khi thục hiện các thao tác. 4. Thái độ: Hình thành phong cách làm việc chuẩn mực, thao tác dứt khoát, luôn có ý thức ham học hỏi. - Giỳp hc sinh thờm yờu thớch v hng thỳ vi mụn hc. II, Chuẩn bị của Giáo viên học sinh: 1. Giáo viên: SGK, giáo án, STK ( máy chiếu nếu có) 2. Học sinh: SGK, chuẩn bị trớc bài ở nhà III, Phơng pháp giảng dạy - Thuyết trình, vấn đáp IV, Tiến trình bài học các hoạt động: 1. ổn định tổ choc: 2 2. Kiểm tra bài cũ: Không 3. Bài mới: Hoạt động của Giáo viên học sinh Nội dung GV: Em hãy cho biết các bớc để giải một bài toán trên máy tính. HS: Trả lời câu hỏi GV: Phân tích câu trả lời của học sinh nhắc lại các bớc giải bài toán trên máy tính đã học ở lớp 10. GV: Vậy theo em lập trình là gì? HS: Lập trình là sử dụng một cấu trúc dữ liệu các câu lệnh của một ngôn ngữ lập trình mô tả dữ liệu diễn đạt * Khái niệm lập trình: Lập trình là sử dụng cấu trúc dữ liệu các câu lệnh của ngôn ngữ lập trình cụ thể để mô tả dữ liệu diễn đạt thuật toán. GV: Gọi một học sinh nhận xét, bổ sung. HS: Nhận xét, bổ sung GV: Em hãy cho biết có mấy loại ngôn ngữ lập trình ? (nêu khái niệm của từng ngôn ngữ) HS: Theo em có 3 loại ngôn ngữ lập trình: ngôn ngữ máy, hợp ngữ, ngôn ngữ bậc cao GV: Phân tích câu trả lời của học sinh HS: Chú ý nghe GV: Theo em làm thế nào để chuyển chơng trình viết bằng ngôn ngữ bậc cao sang ngôn ngữ máy? HS: Phải có chơng trình dịch để chuyển đổi. GV: Nhận xét. GV: Đa ra các ví dụ: Một ngời không biết nói tiếng Anh vậy làm thế nào có thể nói chuyện đợc với ngời Anh? HS: Phải có ngời phiên dịch GV: Khi một ngời làm phiên dịch ngời đó phải dịch nh thế nào? HS: Dịch ngay khi hai ngời nói chuyện. GV: Khi một ngời muốn dịch một cuốn các thao tác của thuật toán. - Có ba loại ngôn ngữ lập trình: Ngôn ngữ máy, hợp ngữ, ngôn ngữ bậc cao Chuơng trình viết bằng ngôn ngữ lập trình bậc cao nói chung không phụ thuộc vào loại máy, nghĩa là một chơng trình có thể thực hiện trên nhiều loại máy tính khác nhau. Ch- ơng trình viết bằng ngôn ngữ máy có thể đợc nạp trực tiếp vào bộ nhớ thực hiện ngay. Chơng trình Bài 1 Khái niệm lập trình ngôn ngữ lập trình ?. Dựa vào các kiến thức đã học ở lớp 10, em hãy điền vào các ô trống sau? 1. Mọi bài toán có thuật toán đều có thể giải được trên…………. 2. Sau các bước xác định bài toán, xây dựng thuật toán lựa chọn thuật toán là ………… 3. Lập trình là: … . máy tính điện tử bước lập trình Sử dụng cấu trúc dữ liệu các câu lệnh của ngôn ngữ lập trình cụ thể để mô tả dữ liệu diễn đạt thao tác của thuật toán. ?. Dựa vào các kiến thức đã học ở lớp 10, em hãy điền vào các ô trống sau? 4. Chương trình viết bằng ngôn ngữ máy có thể được nạp trực tiếp vào bộ nhớ …… 5. Chương trình viết bằng ngôn ngữ bậc cao muốn máy tính hiểu được phải được …………………………… 6. Vậy ngôn ngữ máy là ngôn ngữ duy nhất mà máy tính …………………………. 7. Chương trình dịch là chương trình dịch từ ngôn ngữ khác……………………. thực hiện ngay dịch sang ngôn ngữ máy có thể hiểu thực hiện sang ngôn ngữ máy Chương trình nguồn Chương trình đích • Xét ví dụ SGK ( trang 4 ) • Nhận xét : Có 2 cách thực hiện là Thông dịch Biên dịch a. Thông dịch. - Thông dịch được thực hiện bằng cách lặp lại dãy các bước sau: 1. Kiểm tra tính đúng đắn của câu lệnh tiếp theo trong chương trình nguồn; 2. 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; 3. Thực hiện các câu lệnh vừa chuyển đổi. Chương trình dịch b. Biên dịch • Biên dịch được thực hiện qua hai bước. 1. 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; 2. 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 có thể lưu trữ để sử dụng lại. Bài tập áp dụng Củng cố 1. Khái niệm thông dịch: là một dãy các lệnh được lặp đi lặp lại nhiều lần cho đến khi kết thúc. 2. Khái niệm biên dịch: Là một dãy các lệnh được diễn ra một các liên tục. Ưu điểm là có thể lưu trữ để sử dụng lại. TRƯỜNG PT DTNT TỈNH LÂM ĐỒNG Chương 1: Một số khái niệm về Lập trình Ngôn ngữ lập trình Ngày soạn: 01/9/2007 Tuần dạy: 01 Tiết PP: 01 BÀI DẠY BÀI 1: KHÁI NIỆM LẬP TRÌNH NGÔN NGỮ LẬP TRÌNH I. Mục đích yêu cầu: • Kiến thức: - Giúp cho học sinh hiểu khả năng của ngôn ngữ lập trình bậc cao. - Giúp học sinh hiểu được ý nghĩa của chương trình dịch, biết thế nào là biên dịch thông dịch. • Thái độ: - Giúp học sinh nhận thức được quá trình phát triển của ngôn ngữ lập trình gắn liền với quá trình phát triển của tin học nhằm giải các bài toán thực tiễn ngày càng phức tạp. Từ đó ham muốn được học một ngôn ngữ lập trình cụ thể để có thể tự giải các bài toán bằng máy tính. • Kỹ năng: - Phân biệt được các lớp ngôn ngữ lập trình, phân biệt được biên dịch thông dịch. II. Phương pháp: - Dạy-học phát hiện vấn đề giải quyết vấn đề kết hợp dạy-học hợp tác trong nhóm nhỏ. III.Chuẩn bị: • Giáo viên: - Giáo án điện tử, phòng học công nghệ cao, phiếu học tập. - Đồ dùng dạy học: Sơ đồ khối biểu diễn quá trình thông dịch quá trình biên dịch. • Học sinh: - Sách giáo khoa, vở học, vở bài tập, giấy nháp, bút, bảng phụ. IV. Tiến trình bài dạy: t Nội dung Hoạt động của giáo viên Hoạt động của học sinh 5’ 15’ Hoạt động 1: Ổn định lớp Hoạt động 2: Bài mới. 1. Ôn tập: a. Các bước giải bài toán trên máy tính. - Xác định bài toán. - Lựa chọn thiết kế thuật toán. - Viết chương trình. - Hiệu chỉnh chương trình. - Viết tài liệu. b. Các lớp ngôn ngữ lập trình. Ngôn ngữ lập trìnhngôn ngữ để viết chương trình, được chia thành 3 lớp. - Ngôn ngữ máy. - Hợp ngữ. - Ngôn ngữ bậc cao: là ngôn ngữ lập trình rất thích hợp cho người lập trình vì các lệnh gần với ngôn ngữ tự nhiên, tính độc lập cao. - Ổn định lớp, giới thiệu bộ môn, yêu cầu HS chuẩn bị sách, vở hướng dẫn phương pháp học tập bộ môn. - Chia nhóm theo tổ hoặc theo bàn học, phát câu hỏi hướng dẫn thảo luận. - Đặt một số câu hỏi gợi nhớ kiến thức cũ. - Mời một đại diện nhóm trả lời câu hỏi. - Nhận xét kết luận các vấn đề. Đặc điểm các lớp NN lập trình. * Ngôn ngữ máy: bị phụ thuộc vào loại máy tính, lệnh là các dòng số không gợi nghĩa * Hợp ngữ: lệnh là cụm từ tiếng Anh viết tắt. Phải dùng chương trình hợp dịch để chuyển đổi. * Ngôn ngữ bậc cao: không phụ thuộc vào oại máy tính. Phải dùng chương trình dịch để chuyển đổi. - Nắm bắt những yêu cầu của môn học, làm quen với phương pháp học tập bộ môn. - Chủ động trong hoạt động nhóm, tự phân công tổ trưởng, thư ký HS đại diện trả lời. - Tham khảo vở học SGK lớp 10, đọc kỹ câu hỏi thảo luận nhóm để giải quyết vấn đề * Nhóm 1: liệt kê các bước giải bài toán giải thích từng bước phải làm gì? * Nhóm 2: chia bảng phân biệt các lớp NNLT theo các đặc điểm khái niệm. Ngôn ngữ máy Hợp ngữ Ngôn ngữ bậc cao - Lệnh - Phụ thuộc - … - … - … - … - … - … GIÁO ÁN TIN HỌC 11 (1) GV: Hoàng Ngọc Trung Hiếu TRƯỜNG PT DTNT TỈNH LÂM ĐỒNG Chương 1: Một số khái niệm về Lập trình Ngôn ngữ lập trình 15’ 5’ 5’ Hoạt động 3: Bài mới. 2. 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 viết bằng ngôn ngữ bậc cao thành chương trình chạy được trên máy tính. Chương trình nguồn (Chương trình viết bằng ngôn ngữ lập trình bậc cao) ↓ Chương trình dịch ↓ Chương trình đích (Chương trình bằng ngôn ngữ máy, chạy được trên máy tính) - Thông dịch: duyệt từng câu lệnh của chương trình. Nếu lệnh sai thì dừng quá trình dịch. Nếu lệnh đúng thì dịch thực hiện câu lệnh rồi chuyển quá trình đến lệnh tiếp theo. - Biên dịch: duyệt qua toàn bộ chương trình. Nếu phát hiện có lỗi thì ngừng quá trình dịch, ngược lại dịch toàn bộ chương trình, thực hiện chương trình lưu lại chương trình đích đã dịch được. Hoạt động 4: Bài mới. 3. Khái niệm Lập trình: Là sử dụng cấu trúc dữ liệu các câu lệnh của ngôn ngữ lập trình cụ thể để mô tả dữ liệu diễn đạt các thao tác của thuật toán. Học lập trình là: - Học sử dụng cấu trúc dữ liệu. - Học thuật toán cách thiết kế thuật toán. - Học sử dụng ngôn ngữ lập trình. Hoạt động ... chương trình nguồn  Chuyển đổi câu lệnh thành hay nhiều câu lệnh ngôn ngữ máy  Thực câu lệnh vừa chuyển đổi Củng cố: - Khái niệm lập trình ngôn ngữ lập trình - Các ngôn ngữ lập trình: ngôn ngữ. .. chương trình ngôn ngữ bậc cao muốn thi hành loại máy cần chuyển chương trình sang ngôn ngữ máy máy HS: Nghe giảng ghi Chương trình viết ngôn ngữ máy nạp trực tiếp vào nhớ thi hành Chương trình. .. lời: Cần phải có chương trình dịch GV: Nhận xét phân tích HS: Nghe giảng ghi Cần phải có chương trình dịch để chuyển chương trình viết ngôn ngữ lập trình bậc cao sang ngôn ngữ máy để máy thi hành

Ngày đăng: 30/09/2017, 02:58

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan