JavaScript is required

Khai báo nào sau đây là sai?

A.

Mov ds,@data

B.

Mov ax,sum

C.

Mov sum,dx

D.

Không có khai báo nào sai

Trả lời:

Đáp án đúng: A


Trong hợp ngữ (assembly), lệnh Mov dùng để di chuyển dữ liệu từ một vị trí (nguồn) sang một vị trí khác (đích). Tuy nhiên, có một số quy tắc cần tuân thủ:

A. Mov ds,@data: Lệnh này hợp lệ. Nó di chuyển địa chỉ của segment @data vào thanh ghi ds (data segment). Thanh ghi ds thường được sử dụng để trỏ đến vùng nhớ dữ liệu.

B. Mov ax,sum: Lệnh này hợp lệ. Nó di chuyển giá trị của biến hoặc nhãn sum vào thanh ghi ax.

C. Mov sum,dx: Lệnh này không hợp lệ trong nhiều trình hợp ngữ (assembler) vì không cho phép di chuyển trực tiếp từ thanh ghi dx vào một vùng nhớ (biến sum) mà không thông qua thanh ghi khác hoặc sử dụng địa chỉ bộ nhớ cụ thể. Cần phải sử dụng một thanh ghi trung gian hoặc một phương pháp định địa chỉ khác để thực hiện thao tác này một cách chính xác.

Do đó, khai báo C là sai.

Câu hỏi liên quan