Mục đích đoạn lệnh sau dùng để ? PUSH CX MOV CX,0FFFFh LOOP $ POP CX
Trả lời:
Đáp án đúng: D
Đoạn lệnh trên thực hiện việc tạo trễ bằng cách sử dụng vòng lặp `LOOP`.
* `PUSH CX`: Lưu giá trị hiện tại của thanh ghi `CX` vào stack.
* `MOV CX, 0FFFFh`: Gán giá trị `0FFFFh` (65535 trong hệ thập phân) vào thanh ghi `CX`. Đây là số lần lặp sẽ được thực hiện.
* `LOOP $`: Lệnh `LOOP` sẽ giảm giá trị của `CX` đi 1 và nhảy về địa chỉ hiện tại (`$`) nếu `CX` khác 0. Vòng lặp này sẽ tiếp tục cho đến khi `CX` bằng 0.
* `POP CX`: Khôi phục giá trị ban đầu của `CX` từ stack.
Việc lặp lại một số lượng lớn lần (65535) sẽ tạo ra một khoảng thời gian trễ, vì CPU cần thời gian để thực hiện từng vòng lặp. Do đó, mục đích của đoạn lệnh này là tạo trễ.
Câu hỏi liên quan

FORM.08: Bộ 130+ Biểu Mẫu Thống Kê Trong Doanh Nghiệp

FORM.07: Bộ 125+ Biểu Mẫu Báo Cáo Trong Doanh Nghiệp

FORM.06: Bộ 320+ Biểu Mẫu Hành Chính Thông Dụng

FORM.05: Bộ 330+ Biểu Mẫu Thuế - Kê Khai Thuế Mới Nhất

FORM.04: Bộ 240+ Biểu Mẫu Chứng Từ Kế Toán Thông Dụng
