JavaScript is required

Các thanh ghi nào giữ địa chỉ Offset khi 8086 truy cập vùng nhớ ngăn xếp?

A. Chỉ có SP

B. BX và SP

C. Chỉ có BP

D. BP và SP

Trả lời:

Đáp án đúng: D


Trong kiến trúc 8086, ngăn xếp (stack) là một vùng nhớ đặc biệt được sử dụng để lưu trữ dữ liệu tạm thời, địa chỉ trả về của các chương trình con và các thông tin quan trọng khác. Việc truy cập ngăn xếp được thực hiện thông qua hai thanh ghi chính: * **SP (Stack Pointer):** Thanh ghi SP luôn trỏ đến đỉnh của ngăn xếp. Nó chứa địa chỉ offset hiện tại của đỉnh ngăn xếp so với segment chứa ngăn xếp (thường là SS - Stack Segment). * **BP (Base Pointer):** Thanh ghi BP thường được sử dụng để truy cập các biến cục bộ (local variables) trong một stack frame. Nó chứa địa chỉ offset của một vị trí nào đó trong stack frame, thường là điểm bắt đầu của stack frame hiện tại. Điều này cho phép truy cập các biến cục bộ một cách dễ dàng, ngay cả khi SP thay đổi trong quá trình thực thi hàm. Vì vậy, cả BP và SP đều được sử dụng để giữ địa chỉ Offset khi 8086 truy cập vùng nhớ ngăn xếp.

Câu hỏi liên quan