JavaScript is required

Đoạn lệnh sau sai ở câu lệnh nào? 

A.
MOV AX, 3
B.
MUL BX
C.
IMUL BX
D.
MOV BX,-1
Trả lời:

Đáp án đúng: B


Trong ngữ cảnh của hợp ngữ (assembly), lệnh `IMUL BX` (nhân có dấu) yêu cầu toán hạng AX phải là toán hạng ngầm định (implicit operand). Tức là, `IMUL BX` sẽ nhân giá trị trong AX với giá trị trong BX, và kết quả sẽ được lưu trữ vào AX (nếu kết quả vừa đủ 16 bit) hoặc DX:AX (nếu kết quả cần 32 bit). Do đó, trước khi thực hiện `IMUL BX`, AX phải chứa một giá trị khởi tạo. Các lệnh còn lại đều hợp lệ: - `MOV AX, 3`: Gán giá trị 3 vào thanh ghi AX. - `MUL BX`: Phép nhân không dấu, tương tự IMUL nhưng không xét dấu. - `MOV BX, -1`: Gán giá trị -1 vào thanh ghi BX.

Câu hỏi liên quan