<< Chapter < Page Chapter >> Page >

Begin

Lệnh 1;

Lênh 2;

.......

Lệnh n

End

Cấu trúc lệnh hợp thành cho phép một tập hợp các lênh được trừu tượng hóa thành một lệnh đơn.

Lệnh hợp thành được cài đặt trong máy tính ảo bằng cách thiết lập một khối các mã lệnh có thể thực hiện được biểu diễn cho mỗi một lệnh của chuỗi lệnh trong bộ nhớ. Thứ tự mà chúng xuất hiện trong bộ nhớ xác định thứ tự trong đó chúng được thực hiện.

Lệnh điều kiện (conditional statements)

Lệnh điều kiện là một lệnh biểu thị sự lựa chọn của hai hoặc nhiều lệnh. Việc lưạ chọn được điều khiển bằng cách kiểm tra một số điều kiện thường được viết trong dạng biểu thức của các phép toán quan hệ và logic. Các lệnh điều kiện phổ biến là lệnh IF và lệnh CASE.

Lệnh IF được cụ thể hóa thành các dạng IF một nhánh, IF hai nhánh và IF đa nhánh.

Chọn thực hiện một lệnh được biểu thị là IF một nhánh: IF<điều kiện>THEN<Lệnh>ENDIF

Chọn một trong hai dùng IF hai nhánh: IF<điều kiện>THEN<Lệnh1>ELSE<Lệnh2>ENDIF

Chọn một trong nhiều dùng các IF nối tiếp nhau hoặc dùng IF đa nhánh:

IF<điều kiện1>THEN<Lệnh1>

ELSIF<điều kiện2>THEN<Lệnh2>

.

.

.

ELSIF<điều kiệnN>THEN<LệnhN>

ELSE<LệnhN+1>ENDIF

Lệnh CASE

Ðiều kiện trong lệnh If đa nhánh thường phải lặp lại việc kiểm tra giá trị của một biến, ví dụ:

IF TAG = 0 THEN

<Lệnh 0>

ELSIF TAG = 1 THEN

<Lệnh 1>

ELSIF TAG = 2 THEN

<Lệnh 2>

ELSE

<Lệnh 3>

ENDIF

Cấu trúc phổ biến này được biểu diễn một cách súc tích hơn bằng lệnh CASE

CASE TAG OF

0:<Lệnh 0>

1:<Lệnh 1>

2:<Lệnh 2>

OTHERS:<Lệnh3>

ENDCASE

Cài đặt lệnh điều kiện

Lệnh IF được cài đặt bằng cách dùng lệnh rẽ nhánh và lệnh nhảy có điều kiện hoặc không có điều kiện trong phần cứng. Kết quả tương tự như đã mô tả trong phần 7.3.2.

Lệnh lặp (interation statements)

Lặp lại đơn, kiểu đơn giản nhất của lệnh lặp xác định phần thân (của lệnh) được thực hiện một số cố định lần. Lệnh PERFORM của COBOL là một điển hình: PERFORM<thân>k TIMES

Lặp lại khi điều kiện đúng: WHILE<test>DO<thân>

Lặp lại trong khi tăng một sự đếm: FOR i:=1 STEP 2 UNTIL 30 DO<thân>

Lặp không xác định, trong đó điều kiện để thoát khỏi vòng lặp không đặt tại đầu vòng, như trong Ada:

LOOP

.......

EXIT WHEN<điều kiện>

........

END LOOP;

Hoặc trong Pascal sử dụng vòng lặp WHILE với điều kiện luôn luôn đúng: WHILE true DO BEGIN .... END;

Cài đặt các lệnh lặp dùng các chỉ thị rẽ nhánh/ nhảy của phần cứng.

Sự ngoại lệ và xử lý ngoại lệ

Một số 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ử cuối tập tin... Các sự kiện đó được gọi là ngoại lệ (exception). Thay vì tiếp tục thực hiện chương trình bình thường, một chương trình con sẽ được gọi để thực hiện một vài xử lý đặc biệt nào đó gọi là xử lý ngoại lệ. Hành động chú ý đến ngoại lệ, ngắt sự thực hiện chương trình và chuyển điều khiển đến xử lý ngoại lệ được gọi là đề xuất ngoại lệ (raising the exception)

Xử lý ngoại lệ

Thông thường các ngoại lệ đã được định nghĩa trước bởi ngôn ngữ, chẳng hạn như ZERO_DIVIDE chỉ sự kiện chia cho một số không, END_OF_FILE: hết tập tin , OVERFLOW: tràn số, hay tràn stack ... Xử lý ngoại lệ là một hành vi xử lý tương ứng khi một ngoại lệ có thể diễn ra. Ví dụ

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Ngôn ngữ lập trình. OpenStax CNX. Jul 29, 2009 Download for free at http://cnx.org/content/col10783/1.1
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Ngôn ngữ lập trình' conversation and receive update notifications?

Ask