JavaScript is required

Cho đoạn mã Assembler sau:MOV A, #0C3HMOV R0, #0AAHADD A, R0Kết quả của thanh ghi A là:

A.

C3H

B.

AAH

C.

6DH

D.

6BH

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.

Câu hỏi liên quan