Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính
Bài giảng môn Lý thuyết ngôn ngữ lập trình
Bài giảng
Bài giảng
LÝ THUYẾT NGÔN NGỮ LẬP TRÌNH
LÝ THUYẾT NGÔN NGỮ LẬP TRÌNH
2/50
Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính
Chương 7
Chương 7
.
.
ĐiỀU KHIỂN TUẦN TỰ
ĐiỀU KHIỂN TUẦN TỰ
Khái niệm
Điều khiển tuần tự giữa các lệnh
Xử lý ngoại lệ
3/50
Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính
KHÁI NiỆM
KHÁI NiỆM
Khái niệm:
–
Ðiều khiển tuần tự là tập hợp các quy tắc, xác định thứ tự thực
hiện trong chương trình
–
về mặt cấu trúc có ba loại điều khiển
Điều khiển tuần tự dùng nhãn lệnh và lệnh GOTO
Các lệnh cơ bản:
–
GOTO không điều kiện. Trong một chuỗi các lệnh, một
lệnh GOTO không điều kiện như GOTO NEXT chuyển điều
khiển tới lệnh có nhãn là NEXT. Lệnh đứng sau GOTO sẽ
không được thực hiện.
–
GOTO có điều kiện. Trong một chuỗi lệnh, một lệnh GOTO có
điều kiện như IF A = 0 then GOTO NEXT chuyển điều khiển
tới lệnh có nhãn là NEXT chỉ khi điều kiện sau IF đúng.
–
Lệnh GOTO có thuận tiện là dễ dùng, và có hiệu quả trong
thực hiện vì nó phản ánh cấu trúc cơ bản của máy tính quy
ước
–
Trong các NNLT bậc cao lệnh GOTO không được dùng nữa,
vì không thể hiện được cấu trúc của chương trình
6/50
Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính
Các lệnh có cấu trúc
Các lệnh có cấu trúc
Một lệnh có cấu trúc là một lệnh chứa các lệnh khác.
Các lệnh thành phần của một lệnh có cấu trúc có thể là
một lệnh cơ bản hoặc một lệnh có cấu trúc. Hầu hết
ngôn ngữ cung cấp một tập hợp các lệnh có cấu trúc
Lệnh Case … of
9/50
Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính
Các lệnh có cấu trúc
Các lệnh có cấu trúc
Lệnh lặp (Interation Statements)
–
Lệnh lặp là lệnh được thực hiện lặp đi lặp lại một số lần tùy
thuộc vào điều kiện nào đó
–
Các loại lệnh lặp:
Lặp với số lần lặp biết trước
Lặp với số lần lặp không biết trước
–
Kiểm tra điều kiện trước
–
Kiểm tra điều kiện sau
10/50
Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính
Xử lý ngoại lệ
Xử lý ngoại lệ
Khái niệm
–
Trong quá trình thực hiện chương trình thường xảy ra một số
sự kiện đặc biệt hoặc các lỗi như: sự tràn số, truy xuất đến chỉ
số mảng nằm ngoài tập chỉ số, thực hiện lệnh đọc một phần tử
Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính
Các lệnh có cấu trúc
Các lệnh có cấu trúc
Đề xuất ngoại lệ
–
Một ngoại lệ có thể được đề xuất bằng phép toán nguyên thuỷ
được định nghĩa bởi ngôn ngữ chẳng hạn phép cộng, phép
nhân có thể đề xuất ngoại lệ OVERFLOW. Ngoài ra, một
ngoại lệ có thể được đề xuất một cách tường minh bởi
người lập trình bằng cách dùng một lệnh được cung cấp
cho mục đích đó. Lệnh này có thể được thực hiện trong một
chương trình con sau khi xác định một biến riêng hoặc tập tin
chứa giá trị không đúng
13/50
Trường Cao đẳng CNTT HN Việt – Hàn Khoa Khoa học máy tính
Các lệnh có cấu trúc
Các lệnh có cấu trúc
Lan truyền ngoại lệ
–
khi xây dựng chương trình thì vị trí mà một ngoại lệ xuất hiện
không phải là vị trí tốt nhất để xử lý nó. Khi một ngoại lệ được
xử lý trong một chương trình con khác, không phải trong
chương trình con mà nó được đề xuất, thì ngoại lệ đó gọi là
được truyền (propagated) từ điểm mà tại đó nó được đề xuất
đến điểm mà nó được xử lý
–
Quy tắc để xác định việc xử lý một ngoại lệ được gọi là chuỗi
các kích hoạt chương trình con hướng tới chương trình con