Ngày soạn: 03/9/2007
Tiết theo 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
- 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á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 và 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 và các lệnh của một 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
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ữ và 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 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ô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 và 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 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ô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
và các lệnh của một 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
- 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ôn ngữ 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ôn ngữ
máy, hợp ngữ và ngôn ngữ bậc cao?
- Hợp ngữ
- Ngôn ngữ bậc cao
- Ngôn ngữ 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ôn ngữ 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ôn ngữ bậc cao sang ngôn
ngữ máy?
- Hỏi: Vì sao không lập trình trên ngôn ngữ
máy để khỏi mất công chuyển đổi mà ngời
ta thờng lập trình bằng ngôn ngữ bậc cao?
- Hợp ngữ: Là ngôn ngữ có sự kết hợp giữa
ngôn ngữ máy và ngôn ngữ tự nhiên
- Ngôn ngữ bậc cao: Các lệnh đợc mã hoá
bằng một ngôn ngữ gần với ngôn ngữ tiến
Anh. Chơng trình viết trên ngôn ngữ bậc
cao phải đợc chuyển đổi thành chơng trình
trên ngôn ngữ 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ập trình bằng ngôn ngữ bậc cao dễ viết
hơn vì các lệnh đợc mã hoá gần với ngôn
ngữ tự nhiên. Lập trình trên ngôn ngữ 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ái niệ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ôn ngữ bậc
cao sang ngôn ngữ 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ôn ngữ bậc cao. Đầu ra cũng là một
chơng trình nhng đợc viết bằng ngôn ngữ 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: