Cho đoạn mã Assembler sau:
ORG 0000H
MOV A, #0B0H
MOV 30H, #23H
MOV R1, #30H
ADD A, @R1
END.
Kết quả của thanh ghi A là:
Trả lời:
Đáp án đúng: D
Đoạn mã Assembler thực hiện các bước sau:
1. **MOV A, #0B0H**: Gán giá trị B0H (tương đương 176 trong hệ thập phân) vào thanh ghi A.
2. **MOV 30H, #23H**: Gán giá trị 23H (tương đương 35 trong hệ thập phân) vào ô nhớ có địa chỉ 30H.
3. **MOV R1, #30H**: Gán địa chỉ 30H vào thanh ghi R1. R1 bây giờ chứa con trỏ đến ô nhớ 30H.
4. **ADD A, @R1**: Cộng giá trị của ô nhớ được trỏ bởi R1 (tức là ô nhớ 30H, chứa giá trị 23H) vào thanh ghi A. Vậy A = A + (30H) = B0H + 23H.
- B0H + 23H = (176 + 35) = 211 (trong hệ thập phân).
- Chuyển 211 sang hệ hexa: 211 = D3H.
Vậy, kết quả cuối cùng của thanh ghi A là D3H.





