JavaScript is required

Cho đoạn mã Assembler sau:

ORG 0000H

MOV 30H, #10H

MOV 31H, #20H

MOV R0, #30H

INC R0

MOV A, @R0

END.

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

A.

30H

B.

10H

C.

31H

D.

20H

Trả lời:

Đáp án đúng: D


Đoạn mã Assembler thực hiện các bước sau: 1. **MOV 30H, #10H**: Gán giá trị 10H vào ô nhớ có địa chỉ 30H. 2. **MOV 31H, #20H**: Gán giá trị 20H vào ô nhớ có địa chỉ 31H. 3. **MOV R0, #30H**: Gán giá trị 30H (địa chỉ) vào thanh ghi R0. R0 bây giờ chứa địa chỉ 30H. 4. **INC R0**: Tăng giá trị của thanh ghi R0 lên 1. R0 bây giờ chứa địa chỉ 31H. 5. **MOV A, @R0**: Lệnh này di chuyển nội dung của ô nhớ có địa chỉ được lưu trong R0 vào thanh ghi A. Vì R0 chứa 31H, nội dung của ô nhớ 31H (là 20H) sẽ được chuyển vào A. Vậy, kết quả cuối cùng của thanh ghi A là 20H.

Câu hỏi liên quan