Khi thực hiện các thao tác với ngăn xếp lệnh POP có chức năng gì?
Trả lời:
Đáp án đúng: A
Ngăn xếp (stack) là một cấu trúc dữ liệu hoạt động theo nguyên tắc LIFO (Last In, First Out), tức là phần tử nào được đưa vào sau cùng thì sẽ được lấy ra đầu tiên. Trong ngữ cảnh của các lệnh assembly, POP là lệnh dùng để lấy dữ liệu ra khỏi ngăn xếp.
* **Lệnh POP:** Lấy một từ (word - thường là 2 bytes) từ đỉnh của ngăn xếp và nạp (load) giá trị này vào một thanh ghi (register) được chỉ định. Đồng thời, con trỏ ngăn xếp (stack pointer) sẽ được điều chỉnh để trỏ đến phần tử kế tiếp trong ngăn xếp.
Phân tích các đáp án:
* **A. Lấy một từ ở đỉnh ngăn xếp nạp vào thanh ghi:** Đây là đáp án chính xác. Lệnh POP thực hiện đúng thao tác này.
* **B. Lấy một byte từ đỉnh ngăn xếp nạp vào thanh ghi:** Sai. POP thường lấy một *từ* (2 bytes), không phải một byte.
* **C. Nạp một byte vào ngăn xếp:** Sai. Đây là chức năng của lệnh PUSH, không phải POP.
* **D. Nạp một từ vào ngăn xếp:** Sai. Đây là chức năng của lệnh PUSH, không phải POP.





