NGÔN NGỮ LẬP TRÌNH
45 tiết = 3 đơn vị học trình
Giảng viên: Nguyễn Văn Linh
E-mail: [email protected]
Tel: (84) (71) 831301
Nguyễn Văn Linh - Programing
Language - Chapter 1
1
TÀI LIỆU THAM KHẢO
1.-Terrence W.Part - Programming languages:
Design and Implementation (second edition) Prentice-Hall Iternational Editions
2.- Trung Việt, Ngô - Các khái niệm cơ bản của lập
trình - Trung tâm khoa học tự nhiên và công nghệ
quốc gia, Hà nội - 1993
3.- Jacques LONCHAMP - Les langages de
programmation: concetps essentiels évolution et
classification - Masson, Pais - 1989
4.- Ngôn ngữ lập trình - Ðại học mở-Bán công thành
phố Hồ Chí Minh - 1994
Nguyễn Văn Linh - Programing Language - Chapter 1
2
NỘI DUNG
•
•
•
•
•
•
•
•
•
Mở đầu
Kiểu dữ liệu
Kiểu dữ liệu sơ cấp
Kiểu dữ liệu có cấu trúc
Kiểu do người dùng định nghĩa
Chương trình con
Ðiều khiển tuần tự
Lập trình hàm
Lập trình logic
Nguyễn Văn Linh - Programing Language - Chapter 1
3
TỔNG QUAN
- Cung cấp cho sinh viên những kiến thức cơ bản của
ngôn ngữ lập trình, qua đó người sinh viên có thể
hiểu rõ hơn về các ngôn ngữ lập trình cụ thể, sử dụng
chúng một cách tốt hơn và trên cơ sở kết hợp với lý
thuyết chương trình dịch để tạo ra một ngôn ngữ
mới.
- Cung cấp các xu hướng lập trình để sinh viên có thể
tiếp cận nhanh với chúng và có được sự lựa chọn một
ngôn ngữ lập trình phù hợp khi cần giải quyết các đề
án tin học trong thực tế.
Nguyễn Văn Linh - Programing Language - Chapter 1
4
CHƢƠNG 1: MỞ ÐẦU
• Khái niệm về ngôn ngữ lập trình
• Vai trò của ngôn ngữ lập trình
• Lợi ích của việc nghiên cứu NNLT
• Các tiêu chuẩn đánh giá một ngôn ngữ tốt
Nguyễn Văn Linh - Programing Language - Chapter 1
5
KHÁI NIỆM VỀ
NGÔN NGỮ LẬP TRÌNH
• Là ngôn ngữ dùng để viết các chương trình
•
•
•
•
cho máy tính.
NNLT cũng có từ vựng, cú pháp và ngữ
nghĩa.
Ngôn ngữ máy.
Hợp ngữ.
Ngôn ngữ cấp cao.
Nguyễn Văn Linh - Programing Language - Chapter 1
6
VAI TRÕ CỦA
NGÔN NGỮ LẬP TRÌNH
• NNLT đóng vai trò là một công cụ giúp con
người thực hiện bước cài đặt trong kỹ nghệ
phần mềm.
• Công cụ đó ngày càng được cải tiến hoàn
thiện và có thể nói mọi tiến bộ trong tin học
đều thể hiện ra trong NNLT.
• NNLT vừa là công cụ vừa là đối tượng
nghiên cứu.
Nguyễn Văn Linh - Programing Language - Chapter 1
7
LỢI ÍCH CỦA VIỆC
NGHIÊN CỨU NNLT
• Cho phép lựa chọn một NNLT phù hợp với dự án
•
•
•
•
thực tế.
Sử dụng một cách có hiệu quả các công cụ của
ngôn ngữ.
Làm tăng vốn kinh nghiệm khi xây dựng các
chương trình.
Tạo sự dễ dàng để học một ngôn ngữ mới.
Tạo tiền đề để thiết kế một ngôn ngữ mới.
Nguyễn Văn Linh - Programing Language - Chapter 1
8
CÁC TIÊU CHUẨN ÐÁNH
GIÁ MỘT NGÔN NGỮ TỐT
Tính dễ đọc.
• Sự giản dị
• Cấu trúc điều khiển
• Kiểu dữ liệu và cấu trúc dữ liệu
• Cú pháp
Tính dễ viết.
• Sự giản dị
• Hỗ trợ cho trừu tượng
• Khả năng diễn đạt
Ðộ tin cậy.
Chi phí Nguyễn Văn Linh - Programing Language - Chapter 1
9
CÁC TIÊU CHUẨN ÐÁNH
GIÁ MỘT NGÔN NGỮ TỐT
Ðộ tin cậy.
• Kiểm tra kiểu
• Xử lý ngoại lệ
• Sự lắm tên
Chi phí
• Đào tạo, cài đặt chương trình
• Dịch chương trình, thực hiện chương trình
• Bảo trì chương trình.
• Mua trình biên dịch
Nguyễn Văn Linh - Programing Language - Chapter 1
10
CHƢƠNG 2: KIỂU DỮ LIỆU
Đối tượng dữ liệu.
Biến và hằng.
Kiểu dữ liệu.
Sự khai báo.
Kiểm tra kiểu.
Chuyển đổi kiểu.
Gán và khởi tạo.
Nguyễn Văn Linh - Programming Languages - Chapter 2
11
ĐỐI TƢỢNG DỮ LIỆU
Khái niệm đối tượng dữ liệu.
Phân loại ĐTDL.
Thuộc tính của ĐTDL.
Giá trị dữ liệu.
Thời gian tồn tại.
Các mối liên kết.
Biến và hằng.
Nguyễn Văn Linh - Programming Languages - Chapter 2
12
BIẾN VÀ HẰNG
Biến:
– ĐTDL do lập trình viên định nghĩa và đặt tên.
– Giá trị dữ liệu có thể thay đổi.
Hằng:
– ĐTDL có tên.
– Giá trị dữ liệu không thay đổi.
– Hằng trực kiện.
Nguyễn Văn Linh - Programming Languages - Chapter 2
13
KIỂU DỮ LIỆU
Định nghĩa kiểu dữ liệu.
Đặc tả kiểu dữ liệu:
– Các thuộc tính.
– Các giá trị.
– Các phép toán.
Cài đặt kiểu dữ liệu:
– Tổ chức lưu trữ trong bộ nhớ.
– Giải thuật thực hiện các phép toán.
Nguyễn Văn Linh - Programming Languages - Chapter 2
14
SỰ KHAI BÁO
Khái niệm khai báo.
Mục đích của sự khai báo:
– Chọn tổ chức lưu trữ tốt nhất.
– Quản lý bộ nhớ.
– Các phép toán chung.
– Kiểm tra kiểu.
Nguyễn Văn Linh - Programming Languages - Chapter 2
15
KIỂM TRA KIỂU
Kiểm tra kiểu tĩnh:
Trong khi dịch.
Ngôn ngữ khai báo.
Thông tin về kiểu
đƣợc cung cấp cho bộ
dịch.
Thực hiện nhanh,
không bỏ sót lỗi.
Không mềm dẻo.
Kiểm tra kiểu động:
Trong khi thực hiện.
Ngôn ngữ không khai
báo.
Thông tin về kiểu lƣu
trong ĐTDL.
Chậm, bỏ sót.
Mềm dẻo.
Nguyễn Văn Linh - Programming Languages - Chapter 2
16
CHUYỂN ĐỔI KIỂU
Khi có sự không tương thích kiểu.
Sử dụng hàm biến đổi kiểu.
Biến đổi kiểu tự động.
Tránh lạm dụng biến đổi kiểu tự động.
Nguyễn Văn Linh - Programming Languages - Chapter 2
17
PHÉP GÁN
Cú pháp khác nhau.
Bản chất khác nhau:
– Phép gán: Kiểu X Kiểu (Không có trị trả
về).
– Phép gán: Kiểu X Kiểu Kiểu (Có trị trả về).
Thực hiện khác nhau: Sao chép giá tri, sao
chép địa chỉ
Nguyễn Văn Linh - Programming Languages - Chapter 2
18
SỰ KHỞI TẠO
Khai báo và khởi tạo.
Tác hại của biến chưa khởi tạo: Sự dụng
nhầm giá trị rác.
Biến có giá trị đầu.
Nguyễn Văn Linh - Programming Languages - Chapter 2
19
CHƯƠNG 3:
KIỂU DỮ LIỆU SƠ CẤP
Định nghĩa.
Đặc tả.
Cài đặt.
Kiểu dữ liệu số.
Kiểu liệt kê.
Kiểu logic.
Kiểu ký tự.
Nguyễn Văn Linh - Programming Languages - Chapter 3
20