Khái niệm ngôn ngữ lập trình - Ngôn ngữ dùng để viết chương trình diễn tả thuật toán sao cho máy tính có thể thực hiện được gọi là ngôn ngữ lập trình.. Ngôn ngữ máy * Khái niệm - Ngôn
Trang 1Tiết 19 Bài 5: NGÔN NGỮ LẬP TRÌNH
1 MỤC TIÊU
a) Kiến thức
- Hs biết khái niệm ngôn ngữ lập trình
- Biết được khái niệm, ưu, nhược điểm của ngôn ngữ máy, hợp ngữ và ngôn ngữ
bậc cao
- Biết thế nào là chương trình dịch.
b) Kĩ năng
- Hs thấy rõ hơn muốn sử dụng máy tính hiệu quả, ngoài việc hiểu biết sơ lược về
cấu trúc máy tính, còn cần hiểu biết về phần mềm ở mức độ có thể làm một số việc thiết thực
- Phân loại một số ngôn ngữ lập trình thông dụng.
c) Thái độ
- Học sinh thấy được sự phong phú của các loại ngôn ngữ lập trình Phát triển các
ngôn ngữ bậc cao là tạo ra môi trường làm việc dễ dàng hơn cho con người Từ đó rèn luyện cho các em tính cần cù và ham thích tìm hiểu
d) Định hướng phát triển năng lực
- Năng lực chung: phát triển năng lực tư duy suy luận, tính chính xác, cẩn thận
cho HS
- Năng lực riêng: phát triển nguồn nhân lực lập trình nói riêng và ứng dụng tin học
nói chung
2 CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
a) Giáo viên
- Giáo án, SGK, máy tính, máy chiếu.
- Phương pháp: vấn đáp gợi mở là chủ yếu, kết hợp với tạo tình huống có vấn đề
nhằm giúp học sinh tham gia tích cực vào giờ học
b) Học sinh
- SGK, vở ghi, học bài cũ, đọc trước bài mới.
3 TIẾN TRÌNH BÀI DẠY
a) Kiểm tra bài cũ
b) Bài mới
* Khởi động:
- Bước 1: Gv đưa ra bài toán (Trình chiếu slide “bài toán tính tổng của hai số nguyên
dương a và b) và giao nhiệm vụ cho Hs
+ Xác định bài toán?
+ Diễn tả thuật toán của bài toán trên bằng phương pháp liệt kê các bước hoặc
sơ đồ khối?
- Bước 2: Hs thực hiện nhiệm vụ cá nhân, Gv quan sát, trợ giúp Hs.
- Bước 3: trao đổi thảo luận, Gv gọi một số Hs lên bảng trình bày và gọi Hs khác nhận
xét
Trang 2- Bước 4: Gv đánh giá kết quả của Hs.
=> GV: với các cách biểu diễn thuật toán đó máy tính đã có khả năng trực tiếp thực
hiện thuật toán được chưa?
Hs: trả lời
Vậy để làm rõ hơn về vấn đề đó, chúng ta sẽ đi tìm hiểu bài hôm nay
Hoạt động 1: tìm hiểu về khái niệm ngôn ngữ lập trình
Gv: đưa ra các câu hỏi gợi mở giúp Hs
đưa ra được khái niệm ngôn ngữ lập
trình
Em hãy nhắc lại nguyên tắc hoạt
động của máy tính ?
HS: suy nghĩ trả lời
->Máy tính hoạt động theo chương
trình
GV: ta biết rằng để giải một bài toán
máy tính không thể chạy trực tiếp thuật
toán mà phải thực hiện theo chương
trình Vậy ta phải chuyển đổi thuật toán
sang chương trình.
GV: Chiếu lên chương trình tính tổng đã
được viết trên ngôn ngữ Free Pascal,
chạy chương trình cho Hs quan sát
(Đây là chương trình sử dụng ngôn ngữ
lập trình Free Pascal để diễn thuật toán
tính tổng ở trên).
GV: ngôn ngữ lập trình là gì?
HS: suy nghĩ, trả lời
GV: chuẩn hóa lại kiến thức cho Hs
GV: có mấy loại ngôn ngữ lập trình?
HS: trả lời
GV: chốt lại
Khái niệm ngôn ngữ lập trình
- Ngôn ngữ dùng để viết chương trình diễn
tả thuật toán sao cho máy tính có thể thực hiện được gọi là ngôn ngữ lập trình
- Có 3 loại ngôn ngữ lập trình: ngôn ngữ máy, hợp ngữ và ngôn ngữ bậc cao
Hoạt động 2: tìm hiểu về ngôn ngữ máy
Bước 1: Giáo viên giao
nhiệm vụ cho Hs hoạt động
theo nhóm (chia lớp thành 4
nhóm, thảo luận trong thời
gian 3 phút)
- Nhóm 1: tìm hiểu về khái
niệm ngôn ngữ máy.
1 Ngôn ngữ máy
* Khái niệm
- Ngôn ngữ máy là ngôn ngữ duy nhất để viết chương
trình mà máy tính trực tiếp hiểu và thực hiện được
- Các lệnh viết bằng ngôn ngữ máy ở dạng mã nhị phân
hoặc mã hexa
Trang 3- Nhóm 2: tìm hiểu về ưu
điểm của ngôn ngữ máy.
- Nhóm 3 và nhóm 4: tìm
hiểu về nhược điểm của
ngôn ngữ máy.
Bước 2: Hs thực hiện nhiệm
vụ thảo luận nhóm, đọc nội
dung SGK, trao đổi để hoàn
thành yêu cầu.GV quan sát,
trợ giúp Hs
Bước 3: Đại diện các nhóm
báo cáo kết quả
Bước 4: GV phân tích và
nhận xét, ghi nội dung chính
lên bảng
HS: theo dõi, ghi bài.
VD: để cộng 2 số nguyên a và b có câu lệnh của ngôn ngữ máy như sau:
111A1EF1001110A11001EC1110101AB1001011110111
Chú ý: Mỗi chương trình viết bằng ngôn ngữ khác muốn thực hiện trên máy tính phải được dịch ra ngôn ngữ máy bằng chương trình dịch
*Ưu điểm
- Vì là ngôn ngữ duy nhất máy tính trực tiếp hiểu và thực
hiện được nên có thể khai thác triệt để các đặc điểm của phần cứng máy tính
* Nhược điểm
- Còn phức tạp, không thuận lợi để viết hoặc hiểu
chương trình
- Phụ thuộc nhiều vào phần cứng của máy tính.
- Phải nhớ một cách máy móc các dòng số không gợi
nhớ ý nghĩa của câu lệnh
- Phải dùng nhiều câu lệnh để diễn tả chi tiết các thao tác
của thuật toán
Hoạt động 3: tìm hiểu về hợp ngữ
GV: Với ngôn ngữ máy, thì máy có thể trực
tiếp hiểu được nhưng nó khá phức tạp và
khó nhớ Cho nên đã có một số ngôn ngữ
lập trình khác xuất hiện để khắc phục các
nhược điểm của ngôn ngữ máy
Bước 1: GV giao nhiệm vụ (GV chiếu lên
màn hình chương trình tính tông của 2 số
nguyên a và b viết bằng hợp ngữ) Em hãy
quan sát chương trình tính tổng 2 số
nguyên a và b trên bảng và cho biết: khái
niệm, ưu và nhược điểm của ngôn ngữ
hợp ngữ?
Bước 2: Hs thực hiện nhiệm vụ cá nhân,
thảo luận GV quan sát, trợ giúp
Bước 3: HS báo cáo kết quả, điều chỉnh,
bổ sung và ghi kết quả vào vở
Bước 4: Đánh giá kết quả và chốt kiến
thức
2 Hợp ngữ
*Khái niệm
Là ngôn ngữ kết hợp ngôn ngữ máy với ngôn ngữ tự nhiên của con người (thường
là viết tắt các từ tiếng Anh) để thể hiện các lệnh trên thanh ghi
Ví dụ: ADD AX, BX
Trong đó: ADD: phép cộng
AX, BX: các thanh ghi
Ý nghĩa của câu lệnh: thực hiện cộng giá trị chứa trong 2 thanh ghi có tên AX và BX kết quả đặt vào thanh ghi AX
* Ưu điểm
- Vì cho phép người lập trình sử dụng một
số từ (thường là viết tắt của tiếng Anh) nên gần với ngôn ngữ tự nhiên hơn so với ngôn
Trang 4GV: Máy tính có thể thực hiện trực tiếp
chương trình viết bằng hợp ngữ hay
không?
HS: Suy nghĩ và trả lời
Không, phải cần chuyển sang ngôn ngữ
máy.
GV: Chốt kiến thức
ngữ máy, thuận lợi hơn cho các nhà lập trình chuyên nghiệp
* Nhược điểm
- Còn phức tạp.
- Phụ thuộc vào nhiều loại máy.
- Các chương trình viết bằng hợp ngữ phải
được dịch ra ngôn ngữ máy bằng chương trình hợp dịch trước khi thực hiện trên máy tính
Hoạt động 4: tìm hiểu về ngôn ngữ bậc cao
GV: Hợp ngữ là một ngôn ngữ đã thuận
lợi hơn cho các nhà lập trình chuyên
nghiệp nhưng vẫn chưa thật thích hợp với
đông đảo người lập trình.
Bước 1: GV giao nhiệm vụ (chiếu lên
chương trình tính tổng 2 số nguyên a và b
được viết bằng ngôn ngữ lập trình Pascal
cho Hs quan sát) Quan sát chương trình và
nghiên cứu SGK đưa ra khái niệm và ưu,
nhược điểm của ngôn ngữ bậc cao.
Bước 2: HS thực hiện nhiệm vụ cá nhân,
trao đổi thảo luận để hoàn thành nội dung
GV yêu cầu GV quan sát và hỗ trợ HS
Bước 3: HS báo cáo kết quả, điều chỉnh,
bổ sung
Bước 4: GV Đánh giá kết quả và chốt kiến
thức HS ghi vào vở
GV: kể tên một số ngôn ngữ bậc cao mà
em biết?
HS: Suy nghĩ và trả lời
GV: Chương trình dịch là gì
HS: Suy nghĩ và trả lời
GV: Phân tích, nhận xét
HS: Lắng nghe, ghi bài
3 Ngôn ngữ bậc cao
* Khái niệm
- Ngôn ngữ bậc cao là ngôn ngữ gần với
ngôn ngữ tự nhiên, có tính độc lập cao, ít phụ thuộc vào các loại máy cụ thể
* Ưu điểm
- Là ngôn ngữ ít phụ thuộc vào các loại máy cụ thể
- Chương trình viết ngắn gọn, dễ hiểu, dễ
hiệu chỉnh, dễ nâng cấp,…
* Nhược điểm
- Cần phải có chương trình dịch để dịch từ
ngôn ngữ bậc cao sang ngôn ngữ máy
Một số ngôn ngữ lập trình bậc cao: FORTRAN, Pascal, C, C++, Java,
* Chương trình dịch
Là chương trình dịch từ các ngôn ngữ khác ngôn ngữ máy ra ngôn ngữ máy
c Củng cố, luyện tập
- GV đưa ra một số bài tập trắc nghiệm (chiếu lên bảng) cho HS thực hiện.
Trang 5- Ghi nhớ ngôn ngữ lập trình có 3 loại: Ngôn ngữ máy, hợp ngữ và ngôn ngữ bậc
cao và
- Muốn máy tính hiểu được thì cần phải dịch sang ngôn ngữ máy qua chương trình
dịch
d Hướng dẫn Hs tự học ở nhà
- Học bài hôm nay học, làm bài tập SGK trang 46
- Đọc trước bài 6 “Giải bài toán trên máy tính” , xem lại trình tự thực hiện các bài
toán đã tìm hiểu trong bài 4, tìm các thuật toán khác có thể giải quyết các bài toán đó Tiết sau tìm hiểu
4 RÚT KINH NGHIỆM