Cho đoạn mã Assembler sau:MOV A, #0C3HMOV R0, #0AAHADD A, R0Kết quả của thanh ghi A là:
Trả lời:
Đáp án đúng: C
Đoạn mã Assembler thực hiện phép cộng giữa hai số hệ thập lục phân. Ta cần thực hiện phép cộng 0C3H + 0AAH để tìm ra kết quả trong thanh ghi A.
0C3H = 195 (decimal)
0AAH = 170 (decimal)
195 + 170 = 365 (decimal)
Chuyển 365 sang hệ thập lục phân: 365 = 16 * 22 + 13 => DD (13 trong hệ thập lục phân là D)
Tiếp tục: 22 = 16 * 1 + 6 => 16
Vậy 365 (decimal) = 16DH
Tuy nhiên, vì thanh ghi A chỉ có 8 bit, nên ta chỉ giữ lại 8 bit thấp nhất của kết quả. Phép cộng 0C3H + 0AAH thực tế được thực hiện như sau:
0C3H
+ 0AAH
-------
16DH
Vì thanh ghi A chỉ có 8 bit, nó sẽ chứa 6DH. Do đó, kết quả của thanh ghi A là 6DH.





