查文庫>試題> 微機原理試題及答案

微機原理試題及答案

微機原理試題及答案

  一、填空題(每空1分,共15分)

  1、 在計算機中,對帶符號數的運算均採用補碼。帶符號負數1100 0011的補碼為_10111101_。

  2、微控制器通常採用“三匯流排”的應用模式,晶片內部設有單獨的地址匯流排、資料匯流排_ 和控制匯流排。

  3、當使用80C51微控制器時,需要擴充套件外部程式儲存器,此時EA應為_0__。

  4、若(A)=B3H,(R0)=A8H,執行指令XRL A,R0之後,(A)=_1BH__。

  5、在80C51微控制器中,帶借位減法SUBB指令中,差的D7需借位時,_CY_=1,差的D3需借位時,AC_=1。

  6、80C51微控制器中,在呼叫子程式前,用_PUSH__指令將子程式中所需資料壓入堆疊,進入執行子程式時,再用___POP__指令從堆疊中彈出資料。

  7、在十六進位制數與ASCII碼值的轉換過程中,當十六進位制數在0~9之間時,其對應的ASCII碼值為該十六進位制數加___30H______。

  8、外部中斷INT0和INT1有兩種觸發方式:___電平觸發方式_____和__邊沿觸發方式__。

  9、在微控制器序列通訊中,依傳送與接收裝置時鐘的配置情況,序列通訊可以分為 __非同步通訊___和__同步通訊_。

  10、若累加器A中的資料為0111 0010B,則PSW中的P=__0___。

  二、選擇題(每題1分,共15分)

  1、微控制器是在一片積體電路晶片上集成了以下部分,除了( D )

  A、微處理器 B、儲存器 C、I/O介面電路 D、串列埠通訊介面

  2、一個機器週期包含多少個晶振週期(D )

  A、2 B、6 C、8 D、12

  3、80C51微控制器有21個特殊功能暫存器,其中與序列口相關的有以下幾個,除了( B )

  A、SBUF B、TCON C、SCON D、PCON

  4、80C51系列微控制器具有4個8位的並行I/O口,其中哪個口工作時需要外接上拉電阻(A )

  A、P0 B、P1 C、P2 D、P3

  5、暫存器中的內容為地址,從該地址去取運算元的定址方式稱為( C )

  A、暫存器定址 B、直接定址 C、暫存器間接定址 D、變址定址

  6、源地址為1005H。目的地址為0F87H。當執行指令“JC rel”時,rel為( B )。

  A、7EH B、80H C、82H D、84H

  7、若(R0)=30H,(30H)=75H,(75H)=90H,執行指令MOV A,@R0後,(A)=__B____。

  A、30H B、75H C、90H D、00H

  8、下列哪個語句是起始地址設定偽指令( A )。

  A、ORG B、END C、DW D、EQU

  9、在80C51微控制器中,各中斷優先順序最低的是( D )。

  A、外部中斷0 B、外部中斷1 C、定時器0 D、計數器1

  10、80C51微控制器的中斷響應時間至少需要( C )個完整的機器週期。

  A、1 B、2 C、3 D、5

  11、在80C51微控制器中,在不帶進位加法ADD指令中,當___B______時,溢位標誌位OV=1。

  A、D7、D6都向前進位 B、只有D7向前進位 C、D7、D6都沒有向前進位 D、只有D3向前進位

  12、當累加器A中的低4位(高4位),出現了非BCD碼時,需要用十進位制調整指令DA A,即在相應的低4位(高4位)加___C___,以產生正確的BCD結果。

  A、2 B、4 C、6 D、8

  13、若(P0)=1011 1100B。執行指令SETB P0.1後,(P0)=___B____。

  A、1011 1101 B、1011 1110 C、1111 1100 D、0011 1100

  14、80C51復位後,PC與SP的值分別為(B )。

  A、0000H ,00H B、0000H ,07H C、0030H ,07H D、0030H ,00H

  15、下列哪條指令是正確的(D )。

  A、 PUSH R2 B、 ADD R0,A C、 MOVX A,@DPTR D、 MOV @R0,A

  三、問答題(每題10分,共20分)

  1、簡述什麼是堆疊?堆疊中入棧、出棧的過程?(10分)

  堆疊是在內部RAM中按“後進先出”的規則組織的一片儲存區。

  入棧操作時,先將SP的內容加1,然後將指令指定的直接地址單元的內容存入SP指向的單元;出棧操作時,先將SP指向的單元內容傳送到指令指定的直接地址單元,然後SP的內容減1

  2、列舉出80C51微控制器的.5種定址方式,寫出每一種方式相應的一條指令?(10分)

  第一、暫存器定址,MOV A,R0

  第二、直接定址,MOV A,50H

  第三、暫存器間接定址,MOV A,@R0

  第四、立即定址,MOV A,#50H

  第五、變址定址,MOV A,@A+DPTR

  第六、相對定址,JC 50H

  第七、位定址,CLR ACC.0

  四、程式閱讀題(15分)

  1、 設(A)=38H,R0=28H,(28H)=18H,執行下列程式後,((A))=__E7H______。(5分)

  ORL A,#27H

  ANL A,28H

  XCHD A,@R0

  CPL A

  2、閱讀下列程式段,寫出每條指令執行後的結果,並說明此程式段完成什麼功能?(10分) MOV R1,#30H; (R1)=___30H_____,

  MOV A,#64H; ((A))=___64H____,

  ADD A,#47H; ((A))=___ABH____,(CY)=____0____,(AC) =____0____,

  DA A ; ((A))=___11H____,(CY)=_____1___,(AC) =___1_____,

  MOV @R1,A; (R1)=____30H___,(30H)=___11H_____。

  五、計算題(10分)

  若要求定時器T0工作方式1,定時時間為1ms,當晶振為6MHz時,求送入TH0和TL0的計數器初值各為多少?

  解:由於晶振為6MHz,所以機器週期Tcy=112=2μs。 -6610

  N=t/Tcy=110-3/210-6=500

  X=216-N=65536-500=65036=FE0CH

  即應將FEH送入TH0中,0CH送入TL0中。

  所以,TH0和TL0的計數器初值各為FEH和0CH。

  六、程式設計題(25分)

  1、若微控制器的晶振頻率為12MHz,試用迴圈轉移指令編寫延時100ms的延時子程式。(10分)

  答:分析:一個機器週期=12個晶振週期=1μs,執行一條DJNZ指令需要2個機器週期,即2μs。採用迴圈計數法實現延時,迴圈次數可以透過計算獲得,並選擇先執行後判斷的迴圈程式。

  彙編程式如下:

  DEL: MOV R7,#400 ;1μs

  DEL1: MOV R6,#123 ;1μs

  NOP ;1μs

  DEL2: DJNZ R6,DEL2 ;2μs,共(2*123)μs

  μs, DJNZ R7,DEL1 ;2μs,共((2*123+2+2)*400+1)即100.01ms

  2、有一變數存放在片內RAM的30H單元,其取值範圍為00H~04H。要求編制一段程式,根據變數值求其平方值,並存入片內RAM的31H單元。(15分)

  程式如下:

  ORG 1000H

  START: MOV DPTR,#2000H

  MOV A,30H

  MOVC A,@A+DPTR

  MOV 31H,A

  SJMP $

  ORG 2000H

  TABLE: DB 00,01,04,09,16