Ngôn ngữ bậc cao là gì ưu nhược điểm

Tiết 19 Ngày soạn 12/10/2010
Bài 5 : Ngôn ngữ lập trình
I.MỤC TIÊU, YÊU CẦU
- Kiến thức:
• Biểt được khái niệm ngôn ngữ máy, hợp ngữ, ngôn ngữ bậc cao.
• Ưu, nhược điêm của ngôn ngữ máy.
-Kĩ năng : Rèn luyện kĩ năng phân biệt giữa ngôn ngữ máy,hợp ngữ, ngôn ngữ
bậc cao, giữa ngôn ngữ lập trình với các ngôn ngữ khác.
-Thái độ : Nghiêm túc.
II. CHUẨN BỊ
- GV: SGK, tài liệu tham khảo.
- HS: SGK, đồ dùng học tập.
III. PHƯƠNG PHÁP: thuyết trình vấn đáp.
IV. CÁC BƯỚC LÊN LỚP
1. Ổn định lớp 2’
- Kiểm tra sĩ số.
- Ổn định trật tự lớp.
2. Tiến trình bài giảng
a) Hoạt động 1: Ngôn ngữ máy
Hoạt động của giáo viên và học sinh Nội dung Time
GV: Để xây dựng thụât toán ta có mấy
cách? Đó là những các nào?
HS: Có 2 cách: Liệt kê và sơ đồ khối.
GV: Vậy 2 cách đó thì máy tính có thể
giải quyết trực tiếp bài toán được
không?
HS: Không.
GV: Đúng. Khi giải quyết một bài toán
trên máy tính, muốn máy tính
“hiểu” được thuật toán chúng ta
diễn đạt thuật toán bằng một


chương trình. Một chương trình có
thể viết từ nhiều ngôn ngữ khác
nhau gọi là ngôn ngữ lập trình.
GV: Mỗi loại máy tính đều có ngôn
ngữ máy của nó, đây là ngôn ngữ
duy nhất mà máy tính có thể thực
hiện được.
* Khái niệm ngôn ngữ lập
trình:
- Diễn tả thuật toán bằng
một ngôn ngữ sao cho máy
tính có thể thực hiện được
gọi là chương trình.
- Ngôn ngữ dùng để viết
chương trình gọi là ngôn
ngữ lập trình.
1. Ngôn ngữ máy
- Là ngôn ngữ duy nhất mà
máy tính có thể trực tiếp
hiểu được và thực hiện
được.
5’
10’
1
GV: Vậy với các ngôn ngữ khác nhau,
để máy tính hiểu được thì phải qua
một chương trình gì?
HS: Chương trình dịch.
GV: Vậy ngôn ngữ máy có những ưu
điểm và nhược điểm gì?

HS: Trả lời câu hỏi.
- Các loại ngôn ngữ khác
muốn máy tính hiểu được
phải được dịch ra ngôn ngữ
máy thông qua chương trình
dịch.
- Các lệnh viết bằng ngôn
ngữ máy ở dạng mã nhị
phân hoặc ở dạng mã hexa.
- Ưu diểm: có thể khai thác
triệt để các đặc điểm phần
cứng của máy.
- Nhược điểm: không thuận
lợi cho con người trong việc
viết hoặc hiểu chương trình,
ta phải nhớ một cách máy
móc các dòng số không gợi
ý nghĩa của lệnh đồng thời
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.
b) Hoạt động 2: Hợp ngữ
Hoạt động của giáo viên và học sinh Nội dung Time
GV: Mặc dù đây là ngôn ngữ máy có
thể hiểu được nhưng không có thể
ai cũng biết được chương trình
bằng ngôn ngữ máy bởi vì nó quá
phức tạp và khó nhớ. Đây là những
điểm không thuận lợi cho người
viết hoặc hiểu chương trình, chính

vì thế, để khắc phục các nhược
điểm này đã có rất nhiều loại ngôn
ngữ xuất hiện đã làm thuận tiện cho
người viết chương trình. Một trong
những ngôn ngữ đó là hợp ngữ.
GV: lấy VD minh hoạ
ADD AX, BX: nghĩa là cộng 2 giá
trị của hai thanh ghi AX và BX kết
quả được quy ước đặt vào thanh ghi
AX, trong đó ADD( tiếng Anh có
nghĩa là cộng) là kí hiệu cho phép
2. Hợp ngữ
- Hợp ngữ cho phép người
lập trình sử dụng một số từ
thường là các từ viết tắt
trong tiếng Anh để thể hiện
các lệnh cần thực hiện.
9’
2
cộng. Qua VD này em hãy cho cô
biết người lập trình sử dụng những
từ ngữ như thế nào trong khi viết
chương trình? Và sử dụng những từ
đó để làm gì?
HS: Từ viết tắt tiếng Anh để thể hiện
các lệnh cần thực hiện.
GV: Sau khi viết chương trình phải nhờ
chương trình gì để cho máy hiểu
hay để dịch ra ngôn ngữ máy?
HS: Chương trình hợp dịch.

GV: Vậy hợp ngữ có những ưu điểm và
nhược điểm gì?
HS: Trả lời câu hỏi.
- Một số chương trình viết
bằng hợp ngữ phải được
dịch ra ngôn ngữ máy nhờ
chương trình hợp dịch.
-Ưu điểm: Thuận lợi hơn
cho các nhà lập trình.
- Nhược điểm: Sử dụng địa
chỉ thanh ghi trong máytính
nên vẫn chưa thích hợp với
đông đảo người lập trình.
c) Hoạt động 3: Ngôn ngữ bậc cao
Hoạt động của giáo viên và học sinh Nội dung Time
GV: Hợp ngữ là một ngôn ngữ đã thuận
lợi hơn cho các nhà lập trình nhưng
vẫn chưa thật thích hợp với đông đảo
người lập trình bởi nó sử dụng địa
chỉ của các thanh ghi trong máy tính.
Do đó việc sử dụng vẫn chưa thuận
tiện lắm.
GV: Trong những năm đầu thập kỷ 50
của thế kỷ XX, người ta đã xây dựng
những ngôn ngữ lập trình bậc cao
như: FOTRAN, COBOL, năm 60
cho ra đời BASIC, hiện nay có rất
nhiều ngôn ngữ lập trình bậc cao
được sử dụng như: Pascal, C++, C,…
với các phiên bản khác nhau.

GV: Lấy VD một câu lệnh trong Pascal:
If a>0 then write(‘ a la so duong’);
Câu lệnh này có nghĩa là: nếu a lớn
hơn 0 thì a là số dương.
3. Ngôn ngữ bậc cao
- Ngôn ngữ bậc cao là ngôn
ngữ có các câu lệnh được
viết 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 tính
cụ thể.
- VD: FORTRAN, COBOL,
BASIC, Pascal, C++,….
15’
3
GV: Từ VD trên em có nhận xét gì về
ngôn ngữ lập trình bậc cao (hay đặc
điểm của ngôn ngữ lập trình bậc
cao)?
HS: Sử dụng tiếng Anh nhưng gần gũi
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ể.
GV: Đúng. Vậy mọi ngôn ngữ lập trình
bậc cao đều cần chương trình gì để
dịch những chương trình viết bằng
ngôn ngữ này sang ngôn ngữ máy?
HS; Chương trình dịch.
GV: Ngôn ngữ lập trình bậc cao sử
dụng tiếng Anh nhưng gần gũi 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ể. Do đó nó thích hợp với đông
đảo người lập trình.
- Mọi loại ngôn ngữ lập
trình bậc cao đều cần một
chương trình để dịch nhưng
chương trình viết bằng ngôn
ngữ này sang ngôn ngữ
máy. Chương trình như vậy
gọi là chương trình dịch.
- Thích hợp với đông đảo
người lập trình.
4. Củng cố: 3’
- Khái niệm ngôn ngữ lập trình.
- Khái niệm ngôn ngữ máy.
- Tác dụng của chương trình dịch.
5. Dặn dò: 1’
- Xem lại bài học.
- Trả lời những câu hỏi trong SGK.
- Đọc trước bài 6.
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
Thái Nguyên, ngày……… tháng 10 năm 2010.
Giáo viên hướng dẫn ký duyệt

4