JavaScript is required

Hãy chọn kết quả đúng của lệnh chuyển dữ liệu: MOV [1234], 12

A.

Chuyển giá trị 12h vào ô nhớ [1234]

B.

Lỗi vì không chuyển trực tiếp giá trị vào từ ô nhớ.

C.

Chuyển giá trị 12h vào ô nhớ DS: [1234]

D.

Hoán đổi giá trị của 2 ô nhớ: 1234 và 12

Trả lời:

Đáp án đúng: A


Lệnh MOV [1234], 12 trong hợp ngữ (assembly) có nghĩa là chuyển giá trị 12 (hệ thập phân) vào ô nhớ có địa chỉ là 1234 (hệ thập phân). Vì không có chỉ định rõ ràng về kích thước dữ liệu (byte, word,...), và cũng không có chỉ định segment nào, trình biên dịch/hợp ngữ thường sẽ hiểu là chuyển một byte vào ô nhớ có địa chỉ offset là 1234 trong segment dữ liệu (DS). Do đó, đáp án chính xác nhất là chuyển giá trị 12h (trong ngữ cảnh này, 12 và 12h có thể coi là tương đương vì 12 nhỏ hơn 16) vào ô nhớ DS:[1234]. Các đáp án khác không chính xác vì: B nói rằng không thể chuyển trực tiếp (sai), A không đề cập đến segment DS, D nói về hoán đổi giá trị (sai).

Câu hỏi liên quan