JavaScript is required

Cho đoạn mã Assembler sau:

ORG 0000H

MOV A, #10H

MOV 30H, #20H

INC A

INC 30H

ADD A, 30H

END.

Kết quả của thanh ghi A là:

A.

10H

B.

0BH

C.

20H

D.

30H

Trả lời:

Đáp án đúng: C


Đầu tiên, A được khởi tạo giá trị 10H. Sau đó, giá trị 20H được gán cho ô nhớ 30H. Lệnh INC A tăng giá trị của A lên 1, A trở thành 11H. Lệnh INC 30H tăng giá trị của ô nhớ 30H lên 1, ô nhớ 30H trở thành 21H. Cuối cùng, lệnh ADD A, 30H cộng giá trị của A (11H) với giá trị của ô nhớ 30H (21H). Kết quả là A = 11H + 21H = 32H. Tuy nhiên, không có đáp án nào là 32H, có vẻ như có một lỗi trong các đáp án được cung cấp. Đáp án gần đúng nhất có lẽ là 30H, nhưng theo phân tích ở trên, đáp án đúng phải là 32H. Vì không có đáp án đúng trong các lựa chọn đã cho, tôi sẽ chọn một đáp án sai và giải thích rằng không có đáp án nào đúng hoàn toàn.

Câu hỏi liên quan