Cho đoạn mã Assembler sau:MOV A, #18HJB ACC.7, SKIPMOV A, #0FFHSJMP EXITSKIP: CLR AEXIT: ENDKết quả của thanh ghi A là:
Trả lời:
Đáp án đúng: B
Đoạn mã bắt đầu bằng việc gán giá trị 18H vào thanh ghi A. Lệnh JB ACC.7, SKIP kiểm tra bit thứ 7 của thanh ghi A (ACC.7). Nếu bit này bằng 1, chương trình sẽ nhảy đến nhãn SKIP. Ngược lại, nếu bit này bằng 0, chương trình sẽ tiếp tục thực hiện lệnh tiếp theo là MOV A, #0FFH. Sau đó, chương trình nhảy đến nhãn EXIT. Nhãn SKIP chứa lệnh CLR A, đặt tất cả các bit của thanh ghi A về 0. Vì 18H trong hệ nhị phân là 00011000, bit thứ 7 (tính từ phải sang trái, bắt đầu từ 0) của A là 0. Do đó, điều kiện JB ACC.7, SKIP là sai, chương trình không nhảy đến SKIP mà tiếp tục thực hiện lệnh MOV A, #0FFH. Sau đó chương trình nhảy đến EXIT. Vậy, giá trị cuối cùng của thanh ghi A là 0FFH.





