民國95年 第3梯次 電腦硬體裝修乙級 學科

第21題

在程式執行過程中,已知堆疊指標S P = 2000 H,且往較低位址存入( P U S H ) 資料,當執行三個 P U S H A X 與一個P O P B…

題目

在程式執行過程中,已知堆疊指標S P = 2000 H,且往較低位址存入( P U S H ) 資料,當執行三個 P U S H A X 與一個P O P B X 時,S P 指在

  1. (1) 2001 H
  2. (2) 2002 H
  3. (3) 1 F F C H
  4. (4) 1 F F D H

官方答案

(3) 1 F F C H

解析

x86 架構中 AX 為 16 位元暫存器,每次 PUSH AX 推入 2 個 byte;本題堆疊往「較低位址」成長,故每 PUSH 一次 SP 減 2,每 POP 一次 SP 加 2。已知初值 SP = 2000H。三個 PUSH AX:SP = 2000H − 2×3 = 2000H − 6 = 1FFAH。一個 POP BX:SP = 1FFAH + 2 = 1FFCH。因此最後 SP 指向 1FFC H,答案為 3。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料