JavaScript is required

Xét đoạn chương trình sau: CMP AL,0 JA GAN NEG AL GAN: MOV BL,AL Thoat: Đoạn chương trình trên được viết bằng cấu trúc nào?

A. Cấu trúc IF – THEN

B. Cấu Trúc IF – THEN – ELSE

C. Cấu trúc CASE

D. Cấu trúc WHILE – DO

Trả lời:

Đáp án đúng: A


Đoạn chương trình sử dụng lệnh `CMP AL, 0` để so sánh giá trị trong thanh ghi AL với 0. Nếu giá trị trong AL lớn hơn 0 (điều kiện `JA GAN` được thỏa mãn), chương trình sẽ nhảy đến nhãn `GAN` và thực hiện lệnh `MOV BL, AL`. Nếu không, chương trình sẽ thực hiện lệnh `NEG AL` (lấy số bù 2 của AL) trước khi nhảy đến nhãn `GAN`. Như vậy, cấu trúc này tương đương với cấu trúc IF-THEN-ELSE, trong đó điều kiện là `AL > 0`, nhánh THEN là `MOV BL, AL` (nếu AL > 0, thì BL = AL), và nhánh ELSE là `NEG AL` (nếu AL <= 0, thì AL = -AL).

Câu hỏi liên quan