單片機(jī)基礎(chǔ)第三版課后習(xí)題答案_第1頁
單片機(jī)基礎(chǔ)第三版課后習(xí)題答案_第2頁
單片機(jī)基礎(chǔ)第三版課后習(xí)題答案_第3頁
單片機(jī)基礎(chǔ)第三版課后習(xí)題答案_第4頁
單片機(jī)基礎(chǔ)第三版課后習(xí)題答案_第5頁
已閱讀5頁,還剩16頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、第一章:一、填空題111100EH1001110001100100243. 255 -51 4. 輸入設(shè)備5. 84 6. 630 * 8 * 1024 7. 位字節(jié)字 bit btype word 8. 1111 1111 00100100 11011011 9. 110 89 -115 -50二、單選:DBCAB BBCB第二章:一、填空1PCPC2反向器晶振兩只電容短3加電手動0000H07H第000H07H4621125DPTRDPHDPL664KB單選題DCCACAD第三章:一、填空題:11031234H1113略41100H52630H71H 0A5H 0A5H 75H 0A7H

2、0AAH 0 1 IFH 1 1 0AAH 0 1 20H 1 0 0D5H 1 1 49H 0 0 二、單選題CCBDCA三、其它類型題錯錯對錯錯錯對錯錯錯錯對對對對錯對對錯對錯錯對(三)其它類型題3編寫程序?qū)AM20H23H單元的高4位寫1,低4位寫0。分析:就是把這四個單元寫入F0H。用一個DJNZ的循環(huán)。 ORG 0000H MOV R0,#1FH ;R0指向20H單元 MOV R5,#04H;四個數(shù)LOOP: INC R0 MOV R0,#0F0H ;寫入 DJNZ R5,LOOP ;循環(huán)4次 END 4把m和m+1單元存有兩個BCD數(shù),將它們合并到m單元中,編寫程序完成。 (設(shè)m

3、=30H, 高位在30H,低數(shù)在31H) ORG 0000H MOV A,30H ANL A,#0FH;把它的高四位清零 SWAP A MOV 30H ,A;高低四位調(diào)一下,放回原處 MOV A,31H ANL A,#0FH ORL A,30H;合并起來 MOV 30H,A END5.將部RAM中從data單元開始的10個無符號數(shù)相加,其和送sum單元多,假定相加結(jié)果小于255。編寫程序完成。(設(shè)data=30H, sun =50H) ORG 0000H MOV R0,#2FH ; 指向前一個單元 MOV R5,#0AH;循環(huán)10次 CLR A;先加到A中 LOOP: INC R0 ADD A

4、,R0 DJNZ R5,LOOP MOV 50H,A END 6假定8位二進(jìn)制帶符號數(shù)豐于R0中,要求編寫一個求補(bǔ)程序,所得補(bǔ)碼入入R1中。 ORG 0000H MOV A,R0 CPL A;按位取反 ADD A,#01H;1 MOV R1,A END第四章:一、填空題1.25H40H03H22.914ms3.略4(A) =(30H) (A) >(30H) (A) < (30H)5. 32.87ms編程題1把長度為10H的字符串從部RAM的輸入緩沖區(qū)inbuf向位物外部RAM的輸出緩沖區(qū)outbuf傳送,一直進(jìn)行到遇見回車或整個字符串傳送完畢。試編程實現(xiàn)。   

5、     ORG  0030H                MOV  R0,#inbuf                MOV  R1,#outbuf                              MOV  R4,#

6、10H    LOOP:MOV  A,R0 ; 從部RAM取數(shù) CJNE  A,#0DH,LL ;是否為回車符CR              SJMP  STOP ;是轉(zhuǎn)停止傳送  LL:  MOVX  R1,A ;不是則傳送到外部RAM             INC  R0            INC 

7、 R1              DJNZ  R4,LL;沒傳送完則循環(huán) STOP:  SJMP $2、部RAM從list單元開始存放一正數(shù)表,表中之?dāng)?shù)作無序排列,并以“-1”作結(jié)束標(biāo)志。編程實現(xiàn)在表中找出最小數(shù)。      (3AH存放在運(yùn)行程序時的最小的數(shù))      ORG  0030H            MOV R0,#list     

8、;       MOV A,R0 ;取第一個正數(shù)  LOOP: INC R0 ;指向下一個正數(shù)            MOV 3AH,R0      CJNE A,3AH,CHK ;前一個數(shù)與后一個數(shù)比較 CHK:  JC  LOOP1 ;前一個數(shù)小,則轉(zhuǎn)           MOV A,R0 ;前一個數(shù)大,取后一個數(shù)LOOP1: XCH A,3AH     

9、;       CJNE A,#0FFH,LOOP            XCH A,3AH ;取最小數(shù)            MOV  3BH,A            SJMP $3.部RAM的X,Y單元中各存放一個帶符號的數(shù),試編程實現(xiàn)按如下條件進(jìn)行的運(yùn)算,并將結(jié)果存入Z單元中。若X為正奇數(shù),ZXY;若X為正偶數(shù),ZXY;若X為負(fù)奇數(shù),ZXY;若X為負(fù)偶數(shù),ZXY。分析:

10、負(fù)數(shù):第7位為1,正數(shù):第7位為0奇數(shù):第0位為1,偶數(shù):第0位為0ORG 0000H MOV A,20H CLR C RL A JC FS ;移到負(fù)數(shù)處處理 RR A RR A ;第0位移到C再判定一下是不是1 JC ZJS ;到正奇數(shù)處 MOV A,20H ORL A,21H MOV 22H,A SJMP OK ZJS: MOV A,20H ADD A,21H MOV 22H,A SJMP OK FS: MOV A,20H CLR C RR A JC FJS ;第0位是1,移到正奇數(shù)處理 MOV A,20H XRL A,21H MOV 22H,A SJMP OK FJS: MOV A,20

11、H ANL A,21H MOV 22H,A OK: END  4、把一個8位二進(jìn)制數(shù)的各位用ASCII碼表示之(亦即為“0”的位用30H表示,為“1”的位用31H表示)。該數(shù)存放在部RAM中byte單元中。變換后得到的8個ASCII碼存放在外部RAM以buf始的存儲單元中去。            ORG  0030H          MOV  R0,#byte          MOV  DP

12、TR,#buf          MOV  R5,#08H          MOV  A,R0 LOOP: RLC  A        MOV  R7,A          JC  LOOP1            MOV  A,#30H      

13、;     SJMP  LOOP2  LOOP1:  MOV  A,#31H  LOOP2: MOVX  DPTR,A            MOV  A,R7            INC  DPTR             DJNZ  R5,LOOP5.編程實現(xiàn)運(yùn)算式c = a2+b2 假定a、

14、 b、 c 3個數(shù)分別存放在部RAM的DA、DB、DC單元中,別有平方運(yùn)算子程序調(diào)用。(部RAM的DA、DB、DC單元設(shè)為20H21H22H) ORG 0000H MOV A,20H PUSH ACC AJMP SQR POP ACC MOV 22H,A MOV A,21H PUSH ACC AJMP SQR POP ACC ADD A,22H MOV 22H,A END6、比較兩個ASCII碼字符串是否相等。字符串的長度在部RAM 41H單元,第一個字符串的首地址為42H,第二個字符串的首地址為52H。如果兩個字符串相等,則置部RAM 40H單元為00H;否則置40H單元為FF。 

15、       ORG  0030H      MOV R0,#42H      MOV R1,#52H      MOV R7,41H ;字符串長度 LOOP: MOV A,R0      MOV 30H,R1         CJNE A,30H,LK        INC  R0        INC&#

16、160; R1        DJNZ  R7,LOOP        MOV  40H ,#00H        SJMP  DD  LK:  MOV 40H,#0FFH  DD:  SJMP DD7.外部RAM首址為table的數(shù)據(jù)表中,有10個字節(jié)的數(shù)據(jù)。編程將每個字節(jié)的最高位無條件地置“1”。        ORG 0030H    MOV

17、  DPTR,#table      MOV  R6,#10 LOOP:MOVX A,DPTR      SETB  E7H; E7H就是累加器A的最高位(ACC.7), 也可 : SETB ACC.7      MOVX DPTR,A      INC  DPTR      DJNZ R6,LOOP3編寫程序?qū)AM20H23H單元的高4位寫1,低4位寫0。分析:就是把這四個單元寫入F0H。用一個DJNZ

18、的循環(huán)。 ORG 0000H MOV R0,#1FH ;R0指向20H單元 MOV R5,#04H;四個數(shù)LOOP: INC R0 MOV R0,#0F0H ;寫入 DJNZ R5,LOOP ;循環(huán)4次 END 4把m和m+1單元存有兩個BCD數(shù),將它們合并到m單元中,編寫程序完成。 (設(shè)m=30H, 高位在30H,低數(shù)在31H) ORG 0000H MOV A,30H ANL A,#0FH;把它的高四位清零 SWAP A MOV 30H ,A;高低四位調(diào)一下,放回原處 MOV A,31H ANL A,#0FH ORL A,30H;合并起來 MOV 30H,A END5.將部RAM中從data

19、單元開始的10個無符號數(shù)相加,其和送sum單元多,假定相加結(jié)果小于255。編寫程序完成。(設(shè)data=30H, sun =50H) ORG 0000H MOV R0,#2FH ; 指向前一個單元 MOV R5,#0AH;循環(huán)10次 CLR A;先加到A中 LOOP: INC R0 ADD A,R0 DJNZ R5,LOOP MOV 50H,A END 6假定8位二進(jìn)制帶符號數(shù)豐于R0中,要求編寫一個求補(bǔ)程序,所得補(bǔ)碼入入R1中。 ORG 0000H MOV A,R0 CPL A;按位取反 ADD A,#01H;1 MOV R1,A END第四章:一、填空題1.25H40H03H22.914ms

20、3.略4(A) =(30H) (A) >(30H) (A) < (30H)5. 32.87ms編程題1把長度為10H的字符串從部RAM的輸入緩沖區(qū)inbuf向位物外部RAM的輸出緩沖區(qū)outbuf傳送,一直進(jìn)行到遇見回車或整個字符串傳送完畢。試編程實現(xiàn)。        ORG  0030H                MOV  R0,#inbuf             

21、  MOV  R1,#outbuf                              MOV  R4,#10H    LOOP:MOV  A,R0 ; 從部RAM取數(shù) CJNE  A,#0DH,LL ;是否為回車符CR              SJMP  STOP ;是轉(zhuǎn)停止傳送 

22、; LL:  MOVX  R1,A ;不是則傳送到外部RAM             INC  R0            INC  R1              DJNZ  R4,LL;沒傳送完則循環(huán) STOP:  SJMP $2、部RAM從list單元開始存放一正數(shù)表,表中之?dāng)?shù)作無序排列,并以“-1”作結(jié)束標(biāo)志。編程實現(xiàn)在表中找出最小數(shù)。&#

23、160;     (3AH存放在運(yùn)行程序時的最小的數(shù))      ORG  0030H            MOV R0,#list            MOV A,R0 ;取第一個正數(shù)  LOOP: INC R0 ;指向下一個正數(shù)            MOV 3AH,R0      CJNE A,3AH,CHK

24、 ;前一個數(shù)與后一個數(shù)比較 CHK:  JC  LOOP1 ;前一個數(shù)小,則轉(zhuǎn)           MOV A,R0 ;前一個數(shù)大,取后一個數(shù)LOOP1: XCH A,3AH            CJNE A,#0FFH,LOOP            XCH A,3AH ;取最小數(shù)            MOV  3BH,A

25、            SJMP $3.部RAM的X,Y單元中各存放一個帶符號的數(shù),試編程實現(xiàn)按如下條件進(jìn)行的運(yùn)算,并將結(jié)果存入Z單元中。若X為正奇數(shù),ZXY;若X為正偶數(shù),ZXY;若X為負(fù)奇數(shù),ZXY;若X為負(fù)偶數(shù),ZXY。分析:負(fù)數(shù):第7位為1,正數(shù):第7位為0奇數(shù):第0位為1,偶數(shù):第0位為0ORG 0000H MOV A,20H CLR C RL A JC FS ;移到負(fù)數(shù)處處理 RR A RR A ;第0位移到C再判定一下是不是1 JC ZJS ;到正奇數(shù)處 MOV A,20H ORL A,21H MOV 22H,A SJM

26、P OK ZJS: MOV A,20H ADD A,21H MOV 22H,A SJMP OK FS: MOV A,20H CLR C RR A JC FJS ;第0位是1,移到正奇數(shù)處理 MOV A,20H XRL A,21H MOV 22H,A SJMP OK FJS: MOV A,20H ANL A,21H MOV 22H,A OK: END  4、把一個8位二進(jìn)制數(shù)的各位用ASCII碼表示之(亦即為“0”的位用30H表示,為“1”的位用31H表示)。該數(shù)存放在部RAM中byte單元中。變換后得到的8個ASCII碼存放在外部RAM以buf始的存儲單元中去。  

27、0;         ORG  0030H          MOV  R0,#byte          MOV  DPTR,#buf          MOV  R5,#08H          MOV  A,R0 LOOP: RLC  A       

28、MOV  R7,A          JC  LOOP1            MOV  A,#30H           SJMP  LOOP2  LOOP1:  MOV  A,#31H  LOOP2: MOVX  DPTR,A            MOV  A,R

29、7            INC  DPTR             DJNZ  R5,LOOP5.編程實現(xiàn)運(yùn)算式c = a2+b2 假定a、 b、 c 3個數(shù)分別存放在部RAM的DA、DB、DC單元中,別有平方運(yùn)算子程序調(diào)用。(部RAM的DA、DB、DC單元設(shè)為20H21H22H) ORG 0000H MOV A,20H PUSH ACC AJMP SQR POP ACC MOV 22H,A MOV A,21H PUSH ACC AJMP SQ

30、R POP ACC ADD A,22H MOV 22H,A END6、比較兩個ASCII碼字符串是否相等。字符串的長度在部RAM 41H單元,第一個字符串的首地址為42H,第二個字符串的首地址為52H。如果兩個字符串相等,則置部RAM 40H單元為00H;否則置40H單元為FF。        ORG  0030H      MOV R0,#42H      MOV R1,#52H      MOV R7,41H ;字符串長度 LOOP: MOV A,R0

31、      MOV 30H,R1         CJNE A,30H,LK        INC  R0        INC  R1        DJNZ  R7,LOOP        MOV  40H ,#00H        SJMP  DD  LK:

32、60; MOV 40H,#0FFH  DD:  SJMP DD7.外部RAM首址為table的數(shù)據(jù)表中,有10個字節(jié)的數(shù)據(jù)。編程將每個字節(jié)的最高位無條件地置“1”。        ORG 0030H    MOV  DPTR,#table      MOV  R6,#10 LOOP:MOVX A,DPTR      SETB  E7H; E7H就是累加器A的最高位(ACC.7), 也可 : SETB ACC.7      MOVX DPTR,A      INC  DPTR      DJNZ R6,LOOP第五章一、填空題1 各項任務(wù)2 INT0T0INT1T1串口3 PCPCROM4 中斷源查詢狀態(tài)5 10000001000000/65536 = 15.266 100 ms 7 111 1018 T1 2 0FFH 001BH二、單選題:DCAADCD單片機(jī)基礎(chǔ)第五章習(xí)題課本5。.1設(shè)單片機(jī)的晶振頻率為6MHZ

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論