Trường THPT Gia Định Họ tên học sinh: Trương Minh Trí
Môn: Tin học 10 Học sinh lớp : 10CH
BÀI 5: Ngôn ngữ lập trình
I) Ngôn ngữ máy:
_ Mỗi loại máy tính đều có ngôn ngữ máy của nó. Viết các chương trình bằng ngôn ngữ máy, con người khai
thác triệt để được đặc điểm phần cứng của máy. Từ một chương trình khác, muốn thực hiện trên máy tính thì
ta phải dùng chương trình dịch để dịch ra
Mô phỏng cách dịch từ ngôn ngữ cấp cao sang ngôn ngữ máy
_ Các lệnh viết bằng ngôn ngữ máy thường ở dạng hệ nhị phân hoặc hệ hexa.
_ 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.
+ Nhớ một cách máy móc các dòng số không gợi ý nghĩa
+Dùng nhiều câu lệnh để diễn tả chi tiết thao tác của thuật toán
Một số ngôn ngữ lập trình khác đã được phát triển
II) Hợp ngữ: (assembly language)
_ Hợp ngữ là một ngôn ngữ cấp thấp dùng để viết các chương trình máy tính.
• Qua bài 4, ta thấy rằng: Việc diễn tả thuật toán bằng cách liệt kê hoặc sơ đồ khối chưa cho
máy khả năng tự thực hiện thuật toán.
• Ta cần diễn tả thuật toán bằng ngôn ngữ mà máy tính hiểu được:
• Kết quả diễn tả thuật toán như vậy cho ta một chương trình , còn ngôn ngữ để viết chương
trình là ngôn ngữ lập trình.
Trong bài 5, ta sẽ đi tìm hiểu các loại ngôn ngữ lập trình cũng như độ phụ thuộc của chúng vào
kiến trúc và hoạt động của máy tính.
Hình ảnh ví dụ về hợp ngữ
_So với ngôn ngữ máy, hợp ngữ cho phép người lập trình sử dụng một số thuật ngữ tiếng Anh để thể hiện các
lệnh cần thực hiện.
_ Một chương trình được viết bằng hợp ngữ phải được dịch ra ngôn ngữ máy tính thông qua một chương trình
gọi là chương trình hợp dịch (Assembler).
“Thông thường, một trình hợp dịch hiện đại tạo ra mã nhị phân (object code) bằng cách phiên dịch các lệnh hợp
ngữ thành mã thực thi (opcodes) và phân tích các biểu danh (symbolic names) ứng với các vùng nhớ cùng các
thực thể khác. Việc dùng các biểu danh để tham chiếu là một tính năng then chốt của các trình hợp dịch, nó tiết
_ Một số phiên bản tiêu biểu: Fortran IV,
Fortran 77, Fortran 90, Fortran 95, Fortran
2003.
_ Một số lệnh trong FORTRAN: lệnh gán,
lệnh gọi chương trình con (có các cấu trúc rẽ nhánh hoặc lặp)
Ví dụ: Chương trình “Chào thế giới”
• COBOL (Common Business-Oriented Language) (1959)
_COBOL là một ngôn ngữ lập trình thế hệ thứ ba và là một trong những ngôn ngữ lập trình lâu nhất còn được
sử dụng (từ thập niên 1960).
_Ưu điểm của ngôn ngữ lập trình COBOL:
• COBOL có rất nhiều chức năng để xử lý tập tin, nhất là theo cách xử lý hàng loạt (batch processing).
Không có ngôn ngữ nào có chức năng này ngoài COBOL
• COBOL rất dễ viết, dễ đọc lại để sửa hoặc viết thêm vào (rất quan trọng đối với thế giới chuyên
nghiệp vì người viết chương trình rất có thể đã rời công ty 20, 30 năm sau, mà chương trình vẫn tiếp
tục chạy)
_ Hiện tại Cobol là ngôn ngữ chạy nhiều nhất trên các máy vi tính Mainframe, hằng ngày, hàng triệu dòng
Cobol được viết trong những chương trình "Business".
_ Năm 2006, công ty nghiên cứu thị trường công nghệ thông tin, Gartner, ra thông báo rằng hiện tại 60% các
chương trình chuyên nghiệp được viết hằng ngày được viết bởi ngôn ngữ COBOL..
Ngôn ngữ lập trình FORTRAN
(FORmula TRANslator) của hãng
IBM vào năm 1954 với cha đẻ của
nó: Mr. John Backus
1. program chaothegioi
2.
3. print*,"Chao The Gioi!"
4.
5. end program chaothegioi
6.
Rear Admiral Grace Murray Hopper – người được coi là
20 PRINT "Hello "; U$
30 INPUT "How many stars do you
want: ", N
40 S$ = ""
50 FOR I = 1 TO N
60 S$ = S$ + "*"
70 NEXT I
80 PRINT S$
90 INPUT "Do you want more stars?
", A$
100 IF LEN(A$) = 0 THEN GOTO 90
110 A$ = LEFT$(A$, 1)
120 IF A$ = "Y" OR A$ = "y" THEN
GOTO 30
130 PRINT "Goodbye "; U$
140 END
Hai cha đẻ của ngôn ngữ
lập trình BASIC:
_ Mr. John Kemeny
_ Mr. Thomas Kurtz
_Mọi chương trình Pascal bắt đầu bằng từ khóa Program, cùng với một danh sách tùy chọn các phần mô tả
các tập tin ngoài và sau đó là một khối các dòng lệnh nằm giữa các từ khóa Begin và End.
_Pascal, nguyên thể đơn thuần là ngôn ngữ lập trình thủ tục với một loạt các từ khóa chuẩn if, while, for, và
các thành phần khác.
_Pascal có các kiểu đơn như integer (số nguyên), character (ký tự), boolean (logic), v.v. và enumerations (liệt
kê), là kiểu mới được đưa vào Pascal sau này.
• C++ và Java
_C++ là một loại ngôn ngữ lập trình. Đây là một dạng ngôn ngữ đa mẫu hình tự do có kiểu tĩnh và hỗ trợ lập
trình thủ tục, dữ liệu trừu trượng, lập trình hướng đối tượng, và lập trình đa hình. Từ thập niên 1990, C++ đã
trở thành một trong những ngôn ngữ thương mại phổ biến nhất.