單片機(jī)編程題(經(jīng)典)_第1頁
單片機(jī)編程題(經(jīng)典)_第2頁
單片機(jī)編程題(經(jīng)典)_第3頁
單片機(jī)編程題(經(jīng)典)_第4頁
單片機(jī)編程題(經(jīng)典)_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、單片機(jī)編程題經(jīng)典一、編程題每小鼬分,共20分1。已知在累加器A中存放一個(gè)BCD數(shù)09,請(qǐng)編程實(shí)現(xiàn)一個(gè)查平方表的子程序。2。請(qǐng)使用位操作指令實(shí)現(xiàn)以下邏輯操作:BIT= 10H VP1o 0A11HVCY3。已知變量X存于VAR單元,函數(shù)值Y存于FUNC單元,按下式編程求丫值。1 X 00 x = 0Y= t x 04。已知在R2中存放一個(gè)壓縮的BCD碼,請(qǐng)將它拆成二個(gè)BCD字節(jié),結(jié)果存于SUM開始的單元中低位在前.5。將存于外部RAM 8000H開始的50H數(shù)據(jù)傳送0010H的區(qū)域,請(qǐng)編程實(shí)現(xiàn).編程題每題4分,共20分1。 SQR: 1NC AMOVCA,A+PCRETTAB:DB0, 1, 4

2、, 9,16DB25,36,49, 64, 812。ORL C,11HMOV12H,CMOVC,P1.0ORLC,/10HANLC,12HMOVBIT,CRET3.MOV A.,VARCJNEA,#0, COMP單片機(jī)編程題經(jīng)典SJMP RESCOMPSJMP RESCOMPMOV ASJMP RESPOSIRES :RET。MOVMOV AANL AMOV R0MOV AANL ASWAP A1NC R0MOV R0RET。MOVMOV R0,MOV R2LOOP:MOVXMOVX1NC DPTR1NC R0;x=0, Y=0JNC POSI; x 0, Y=1,#0FFH ;x0,Y=1M

3、OV A,#01HMOV FUNC, AR0,#SUM,R2,#OFH,A;存低字節(jié)BCD,R2,#0F0H,A ;存高字節(jié)BCDDPTR , #8000H#10H,#50HA,DPTR;取數(shù)R0,A ;存數(shù)單片機(jī)編程題經(jīng)典DJNZ R2LOOPRET二、編程題U0分將內(nèi)部RAM20H為首的16個(gè)單元的8位無符號(hào)數(shù)排序?qū)懗龀绦颍⒆鬟m當(dāng)注釋SORT: MOV R0 ,#20H#07HMOV R7#07HCLR TR0;交換標(biāo)志位復(fù)位LOOP: MOVR0MOV2BHINC R0MOV 2AH, R0CLR CSUBB A, R0;比較前后兩個(gè)數(shù)JC NEXT;MOVR0, 2BHDEC R0M

4、OV R0, 2AHINC R0SETB TR0;置交換標(biāo)志位有效NEXT: DJNZ R7 , LOOPJB TR0, SORT; 假設(shè)交換標(biāo)志位有效,繼續(xù)進(jìn)行HERE: SJMP $三、編程序*請(qǐng)使用位操作指令,實(shí)現(xiàn)以下邏輯操作:單片機(jī)編程題經(jīng)典P1.5=ACC 。2AP2。7VACC。1AP2。02。在外部RAM首地址為TABLE的數(shù)據(jù)表中有10個(gè)字節(jié)數(shù)據(jù),請(qǐng)編程將每個(gè)字節(jié)的最高位無條件地置1.3。 已知內(nèi)部RAM 30H單元開始存放20H個(gè)數(shù)據(jù),將其傳送到外部RAM的0000H單元開始的存儲(chǔ)區(qū),請(qǐng)編程實(shí)現(xiàn)。4。已知8個(gè)無符號(hào)數(shù)之和存于R3R4,求其平均值,結(jié)果仍存于R3R4中,請(qǐng)編程實(shí)

5、現(xiàn)R3為高字節(jié).5。兩個(gè)字符串分別存放在首地址為42H和52H的內(nèi)部RAM中,字符串長度放在41H單元,請(qǐng)編程比較兩個(gè)字符串。假設(shè)相等,則把數(shù)字00H送40H單元,否則把0FFH送40H單元。6。請(qǐng)編一能求20H和21H單元內(nèi)兩數(shù)差的絕對(duì)值,并把它保留在內(nèi)部RAM的30H單元的程序。編程題參考答案MOV C,ACC.1ANL C,P2, 0MOV 12H,CMOV,C,A CC.2ANL C,P2.7ORL C,12HMOV P1.5,CRET2 。MOVR2, #10MOV DPRT,#TABLELOOP:MOVX A,DPRT;ORL A,#80H;最高位置1先進(jìn)行與操作,再進(jìn)行或操作程序

6、如下:1取一數(shù)MOVXDPTR,A;寫回原地址單片機(jī)編程題經(jīng)典;處理下一單元DJNZ R2,LOOPRET3。 MOV R0,#30HMOV R1,#00HMOV R2,#20HLOOP: MOV A,R0;取數(shù)MOVX R1,A;存數(shù)1NC R01NC R1DJNZ R2RET,LOOP1NC DPTR4.利用移位指令作除8操作,程序如下:MOV R2,#3LOOP:CLRCMOVA,R3RRCA;高字節(jié)除以2,末位移入C,高位補(bǔ)0MOVR3,A;暫存高字節(jié)MOVA,R4RRCA;低字節(jié)除以2,高字節(jié)末位移入低字節(jié)高位MOVR3,ADJNZR2,LOOPRET5。有一個(gè)字節(jié)不等,整個(gè)字符串不相等,所有字節(jié)相等,兩字串才相等單片機(jī)編程題經(jīng)典MOV R0,#42HMOV R1,#52HLOOP: MOVA, R0CLR C;不相等,F(xiàn)FHT40HSUBB A,R1JNZ LOOP1;相等時(shí),比較下一字節(jié)INC R0INC R1DJNZ 41H,LOOPMOV 40H,#0;所有字符均相等,則兩字串相等。RETLOOP1:MOV 40H,#0FFHRET6 ORG 1200HCLR

溫馨提示

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

評(píng)論

0/150

提交評(píng)論