Bµi míi: Nếu thuật toán chỉ được diễn tả bằng phương Suy nghĩ và trả lời: pháp liệt kê và sơ đồ khối thì máy tính có thể hiểu - Máy tính không hiểu và thực hiện được thuật toán và th[r]
Trang 1Ngày soạn: 22/10/2008
Tiết 17:
Bài 5: Ngôn ngữ lập trình
I- Mục tiêu:
1 Kiến thức:
- Thấy
- Nắm
ngữ, ngôn ngữ bậc cao
2 Kĩ năng:
- Phân loại
3 Thái độ:
- Thấy
túc, tính cần cù và ham thích tìm hiểu
II- Chuẩn bị:
- Một và bài tập ví dụ
- Máy chiếu projector hoặc tranh ve nếu có
III- Hoạt động dạy học:
1 ổn định lớp:
2 Bài cũ:
? Khi cần dùng máy tính giải bài toán:
A- Ta cần xác định Input, Output
B- Ta chỉ cần xác định Input
C- Ta cần xác định Output
D- Cả 3 ý trên
Hãy chọn án ghép đúng
3 Bài mới:
pháp liệt kê và sơ đồ khối thì máy tính có thể hiểu
và thực hiện
không? Vì sao?
Từ phát biểu trên của học sinh: Giáo viên phân
tích và kết luận:
- Muốn máy tính hiểu và thực hiện thì thuật toán
phải
hiểu
trình, các
Báo cáo sĩ số
Suy nghĩ và trả lời
Suy nghĩ và trả lời:
- Máy tính không hiểu và thực hiện
\ dạng vậy vì đó chỉ là các cách mô tả cho con '4 Trong máy tính chỉ có các thông tin
Lắng nghe giáo viên giảng bài và ghi nhớ
Thảo luận và trả lời
Trang 2trình
Em hiểu ngôn ngữ lập trình là gì?
Trên cơ sở đó giáo viên tổng hợp lại sau:
- Ngôn ngữ lập trình là hệ thống một bộ các câu
lệnh và bộ quy tắc về cú pháp từ đó có thể lập
các
? Vậy ngôn ngữ lập trình
Giáo viên chốt lại kiến thức:
Ngôn ngữ lập trình gồm 2 loại cơ bản:
- Ngôn ngữ máy
- Ngôn ngữ bậc cao
? O trình viết trên 2 loại ngôn ngữ này có tên
gọi thế nào?
Thuyết trình: Các loại ngôn ngữ khác muốn máy
tính hiểu
ngữ máy thông qua
Vậy ngôn ngữ máy là gì?
Hoạt động 1: Giới thiệu khái niệm và
các đặc điểm của ngôn ngữ máy.
Thuyết trình: TA đã biết sự hoạt động của máy
tính dựa trên nguyên lí Phôn Nôi- Man, trong đó
mọi thông tin
dãy bít nên thuật toán cũng
dãy bit
? Vậy ngôn ngữ máy là gì?
? Hãy cho biết
ngữ máy là gì?
? Với những
có thích hợp với số đôg ' lập trình không ? tại
- Các câu lệnh
- Các quy tắc về cú pháp Nghe giảng và ghi bài
Thảo luận rồi trình bày
Ngôn ngữ lập trình có 3 loại:
- Ngôn ngữ máy
- Ngôn ngữ Hợp ngữ
- Ngôn ngữ bậc cao
Thảo luận rồi trình bày
- O trình viết trên ngôn ngữ bậc cao thì gọi là
- O trình viết trên ngôn ngữ máy gọi là
Thảo luận rồi trình bày
- Ngôn ngữ máy là tập hợp hữu hạn các dãy bít với những quy tắc xác định Các câu lệnh
viết \ dạng mã nhị phân hoặc mã hexa
Nghiên cứu sách giáo khoa thảo luận rồi trình bày
Ưu điểm:
Là ngôn ngữ duy nhất máy tính có thể trực tiếp hiểu và thực hiện, cho phép khai thác triệt để và tối ưu khả năng của máy
Nhợc điểm:
Ngôn ngữ phức tạp, phụ thuộc nhiều vào phần cứng, chương trình viết mất nhiều công sức, cồng kềnh và khó hiệu chỉnh
Vì vậy ngôn ngữ này không thích hợp với số
đông người lập trình.
Trang 3sao?
Dẫn dắt vấn đề: Để khắc phục
ngôn ngữ máy, một số ngôn ngữ lập trình khác đã
Hoạt động 2:
Giới thiệu khái niệm hợp ngữ và
chương trình hợp dịch.
? Hợp ngữ là gì?
Ví dụ:
ADD AX, BX; ( cộng thanh ghi AX và BX
kết quả để ở thanh ghi AX)
XOR CX, CX; Xoá sạch thanh ghi CX
? Hãy nêu
ngôn ngữ máy?
? Máy tính có thể hiểu và thực hiện trực tiếp
chuơng trình viết bằn ngôn ngữ máy hay không?
? Vậy để máy hiểu
ngữ ta làm cách nào?
? Vậy
? Vậy còn có ngôn ngữ nò khác mà nhiều ' có
thể sử dụng
Hoạt động 3: Phân tích cho học sinh
thấy rõ những ưu điểm nổi bật của
ngôn ngữ bậc cao Giới thiệu một số
ngôn ngữ lập trình bậc cao hiện nay.
Hợp ngữ là một ngôn ngữ đã thuân lợi hơn so
Nghiên cứu sách giáo khoa thảo luận rồi trình bày
Sử dụng một số từ để thực hiện lệnh trên các thành ghi ( ' từ viết tắt của tiếng Anh)
Nghiên cứu sách giáo khoa thảo luận rồi trình bày
Ưu điể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à tiếng Anh)
để thể hiện các lệnh.
Nhược điểm:
Còn phức tạp
Vì vậy ngôn ngữ này chỉ thích hợp với các nhà lập trình chuyên nghiệp.
Không, máy tính chỉ hiểu bằng ngôn ngữ máy
Để chương trình viết bằng hợp ngữ thực hiện
được trên máy tính, nó cần được dịch ra ngôn ngữ máy bằng chương trình hợp dịch.
ngôn ngữ máy máy
Do hu càu thông dụng của ngôn ngữ mà một loại ngôn ngữ khác xuất hiện đó là ngôn ngữ bậc cao
Nghe giảng và ghi nhớ
Trang 4với ngôn ngữ máy, nó thích hợp với các nhà lập
trình chuyên nghiệp
với đông đảo
điểm của các ngôn ngữ trên ' ta đã xây dựng
những ngôn ngữ lập trình bậc cao
? Ngôn ngữ bậc cao có những & điểm nào?
? O trình viết bằng ngôn ngữ bậc cao máy
tính đã hiểu
phải làm gì?
? Hãy kể tên một số ngôn ngữ bậc cao mà em biết?
Nghiên cứu sách giáo khoa thảo luận rồi trình bày
Ưu điểm:
Là ngôn ngữ ít phụ thuộc vào loại máy, chương trình viết ngắn gọn, dễ hiểu, dễ nâng cấp.
Nghiên cứu sách giáo khoa thảo luận rồi trình bày
- Chưa, máy tính chỉ hiểu khi dùng băng ngôn ngữ máy do đó cần có chương trình dịch để dịch những chương trình này sang ngôn ngữ máy.
Một số ngôn ngữ bậc cao:
Turbo Pascal, Visual Basic, Java, Delphi, C++
IV- Củng cố bài:
1 Nhắc lại kiến thức chính đã học trong bài.
- Ngôn ngữ lập trình
- Phân loại và ưu, nhược của các loại ngôn ngữ lập trình
2 Một số câu hỏi trắc nghiệm làm tại lớp.
Câu 1: Ngôn ngữ lập trình là:
A- Phương tiện để soạn thảo chương trình B - PASCAL và C;
C - Ngôn ngữ mô tả thuật toán giải bài toán trên máy tính D - Phương tiện mô tả thuật toán Hãy chọn phương án ghép đúng nhất.
Câu 2: Ngôn ngữ máy là gì?
A- Là bất cứ ngôn ngữ lập trình nào mà có thể mô tả thuật toán để giao cho máy thực hiện;
B - Là 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 - Là các ngôn ngữ lập trình mà sau khi dịch sang hệ nhị phân thì máy có thể thực hiện được D- B và C.
Câu 3: 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 dưới dạng kí tự nhưng về cơ bản mỗi lệnh tương đương với một lệnh máy
Để thực hiện đượ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ể hiểu và thực hiện trực tiếp các câu lệnh dưới dạng kí tự.
Hãy chọn phương án ghép hợp lí nhất.
Trang 5Câu 4: Trong các phát biểu sau, phát biểu nào đúng nhất về ngôn ngữ lập trình bậc cao?
A - Là loại ngôn ngữ mô tả thuật toán dưới dạng văn bản theo những quy ước nào đó và hoàn toán không phụ thuộc vào các máy tính cụ thể.
B - Là loại ngôn ngữ mà máy tính không thực hiện trực tiếp được Trước khi thực hiện phải dịch ra ngôn ngữ máy.
C - Là loại ngôn ngữ có thể mô tả được mọi thuật toán.
D - Là ngôn ngữ lập trình có thể mô tả các thuật toán, cấu trúc dữ liệu một cách dễ hiểu và hầu như không phụ thuộc vào một hệ máy cụ thể
V- Rút kinh nghiệm:
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 654