JavaScript is required

 Giả sử AX=35F7H, BX=126EH, sau lệnh CMP AX,BX lệnh nào sau đây chuyển điều khiển chương trình đến nhãn N?

A.
JG N
B.
JL N
C.
JE N
D.
JB N
Trả lời:

Đáp án đúng: A


Lệnh CMP so sánh hai toán hạng bằng cách thực hiện phép trừ toán hạng đích (AX) cho toán hạng nguồn (BX) nhưng không lưu kết quả. Các cờ trạng thái (status flags) được cập nhật dựa trên kết quả của phép trừ này. Trong trường hợp này, AX = 35F7H và BX = 126EH. Do 35F7H lớn hơn 126EH, nên sau lệnh CMP, cờ Carry Flag (CF) sẽ bằng 0 và cờ Zero Flag (ZF) cũng sẽ bằng 0.

  1. JG N (Jump if Greater): Nhảy đến nhãn N nếu AX > BX (có nghĩa là ZF = 0 và SF = OF, trong đó SF là cờ Sign Flag và OF là cờ Overflow Flag). Vì AX > BX, nên JG N sẽ chuyển điều khiển đến nhãn N.
  2. JL N (Jump if Less): Nhảy đến nhãn N nếu AX < BX (SF != OF). Vì AX > BX, JL N sẽ không chuyển điều khiển đến nhãn N.
  3. JE N (Jump if Equal): Nhảy đến nhãn N nếu AX = BX (ZF = 1). Vì AX != BX, JE N sẽ không chuyển điều khiển đến nhãn N.
  4. JB N (Jump if Below): Nhảy đến nhãn N nếu AX < BX (CF = 1). Vì AX > BX (CF = 0), JB N sẽ không chuyển điều khiển đến nhãn N.

Vậy đáp án đúng là A. JG N.

Câu hỏi liên quan