Q20.
ATmega328P 程式碼如下,其中MCUCR = (1<<IVCE)對應的組合語言指令為下列何者?
數位電子 · 甲級 · 程式語言 · Q20
難易度分析
2 / 5
本題主要測試對 AVR 立即數載入與 I/O 寫入指令的基礎記憶,並無多重判斷或計算需求,屬於較低難度。
正確答案:①
①
:ldi 指令用於將立即數載入暫存器,out 指令用於將資料寫入 I/O 暫存器(MCUCR),此為正確的組合語言對應方式。
:ldi 指令用於將立即數載入暫存器,out 指令用於將資料寫入 I/O 暫存器(MCUCR),此為正確的組合語言對應方式。錯誤選項解析
- ②
:in 指令用於從 I/O 暫存器讀取資料至暫存器,而非寫入,此處應使用 out 指令將資料寫入 MCUCR。 - ③
:lds 指令用於從 SRAM 載入資料,不適用於載入立即數;應使用 ldi 指令載入立即數至暫存器。 - ④
:lds 指令用於從 SRAM 載入資料,且 in 指令用於讀取而非寫入,兩者皆不適用於此寫入 MCUCR 的情境。
Learning Tip
"MCUCR(MCU Control Register)為 AVR 微控制器的控制暫存器,寫入 I/O 暫存器需使用 ldi 載入立即數後搭配 out 指令輸出。常考陷阱為混淆 in/out(I/O 空間讀寫)與 lds/sts(SRAM 空間讀寫)的應用場景,以及 ldi(立即數載入)與 lds(SRAM 載入)的差異。"
學員答題分佈
①
0%
0%②
0%
0%③
0%
0%④
0%
0%此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!