JavaScript is required

Cho đoạn mã Assembler sau:

ORG 0000H

MOV 40H, #65

MOV 41H, #19

MOV R1, 40H

MOV A, @R1

END.

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

A.

19H

B.

65H

C.

40H

D.

13H

Trả lời:

Đáp án đúng: D


Đoạn mã Assembly thực hiện các thao tác sau: 1. `MOV 40H, #65`: Gán giá trị 65 (tương đương 41H) vào ô nhớ có địa chỉ 40H. 2. `MOV 41H, #19`: Gán giá trị 19 (tương đương 13H) vào ô nhớ có địa chỉ 41H. 3. `MOV R1, 40H`: Gán giá trị 40H (địa chỉ ô nhớ) vào thanh ghi R1. Lúc này R1 chứa địa chỉ 40H. 4. `MOV A, @R1`: Lệnh này di chuyển nội dung của ô nhớ có địa chỉ được chứa trong R1 vào thanh ghi A. Vì R1 đang chứa 40H, lệnh này sẽ di chuyển nội dung của ô nhớ 40H vào thanh ghi A. Ô nhớ 40H đang chứa giá trị 65. Vậy sau khi thực hiện lệnh `MOV A, @R1`, thanh ghi A sẽ chứa giá trị 65 (tương đương 41H).

Câu hỏi liên quan