LONGEPASS
Q32.

下列那一程式片段恰可將暫存器A、B 的內容對調?

儀表電子 · 甲級 · 嵌入式系統概論與應用及程式設計 · Q32

難易度分析

3 / 5

題目考核學生對堆疊 LIFO 機制與兩步交換操作之理解。選項呈現多種推入彈出順序,正解須以相反順序取出,故需辨識正確的 PUSH / POP 配對。此設計屬於需基本概念掌握、包含一個主要錯誤提示的典型題型。

正確答案:①儀表電子 甲級 嵌入式系統概論與應用及程式設計 第 32 題 選項 ① 圖片

① 儀表電子 甲級 嵌入式系統概論與應用及程式設計 第 32 題 選項 ① 圖片:PUSH A 將 A 壓入堆疊,PUSH B 將 B 壓入堆疊(此時 B 在棧頂),POP A 將棧頂的 B 彈出至 A,POP B 將剩餘的 A 彈出至 B,成功完成 A、B 內容對調。

錯誤選項解析

  • ② 儀表電子 甲級 嵌入式系統概論與應用及程式設計 第 32 題 選項 ② 圖片:PUSH A、PUSH B 後,POP B 先將 B 彈回 B(原值),POP A 再將 A 彈回 A(原值),堆疊操作順序錯誤,無法完成對調。
  • ③ 儀表電子 甲級 嵌入式系統概論與應用及程式設計 第 32 題 選項 ③ 圖片:PUSH A 後立即 POP B,等於將 A 的值複製給 B,後續 PUSH B、POP A 又將 B 的值複製回 A,最終 A、B 均為原 A 的值,未實現對調。
  • ④ 儀表電子 甲級 嵌入式系統概論與應用及程式設計 第 32 題 選項 ④ 圖片:PUSH B 後 POP A,等於將 B 的值複製給 A,後續 PUSH A、POP B 又將 A 的值複製回 B,最終 A、B 均為原 B 的值,未實現對調。
Learning Tip

"堆疊(Stack) 為 後進先出(LIFO) 結構,利用堆疊交換兩個暫存器內容的關鍵在於:先依序 PUSH 兩個值,再以相反順序 POP 回目標暫存器。常見陷阱是混淆 PUSH/POP 的配對順序,切記最後 PUSH 的值會最先被 POP 出來。"

學員答題分佈

①0%
②0%
③0%
④0%

此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!

相似類型題目