民國104年 第3梯次 數位電子乙級 學科
第61題
有關組合語言的使用,下列敘述何者正確?
題目
有關組合語言的使用,下列敘述何者正確?
- (1) 當堆疊指令P U S H A X 被執行時,會將A X 暫存器內容存入堆疊暫存器( S P )
- (2) 若要將標的特定幾個位元設定為1,必須使用X O R 運算指令
- (3) 左移與右移指令可分為算數與邏輯兩種運算形式
- (4) 副程式呼叫指令,會將返回位址( 即下一個指令的位址) 存入堆疊中
官方答案
(3) 左移與右移指令可分為算數與邏輯兩種運算形式、(4) 副程式呼叫指令,會將返回位址( 即下一個指令的位址) 存入堆疊中
解析
組合語言中,移位指令區分算術與邏輯兩類:左移 SAL 與 SHL 運算相同,右移則有算術右移 SAR(保留符號位元)與邏輯右移 SHR(補零)之別,故選項3正確。副程式呼叫 CALL 執行時,CPU 會先將返回位址(即 CALL 下一個指令的位址)推入堆疊(SP 所指記憶體)再跳轉,故選項4正確。選項1錯誤:PUSH AX 是將 AX 內容存入 SP 所指的堆疊記憶體,並非存入 SP 暫存器本身。選項2錯誤:將特定位元設為1應使用 OR 指令,XOR 是用來切換(反相)位元。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。