版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
完美.格式.編寫練習題3答案簡述下列基本觀點:指令,指令系統(tǒng),機器語言,匯編語言。答:指令是單片機CPU履行某種操作的命令。指令系統(tǒng)是一臺計算機所能履行的指令會合。機器語言即二進制代碼語言,是計算機能夠直接辨別。匯編語言是用助記符、字符串和數(shù)字等來表示指令的程序語。簡述AT89S51單片機的指令格式答:該單片機的指令由兩部分組成,即操作碼和操作數(shù)。操作碼用來規(guī)定指令進行什么操作,而操作數(shù)則是指令操作的對象,操作數(shù)可能是一個詳細的數(shù)據(jù),也可能是指出到哪里取得數(shù)據(jù)的地點或符號。指令格式一般為:[標號:]操作碼[操作數(shù)1][,操作數(shù)2][,操作數(shù)3][;說明]簡述AT89S51的尋址方式和所能波及的尋址空間答:共有7種尋址方式,見表3-2。分別是:(1)寄存器尋址:尋址范圍為通用寄存器組,共4組32個,但只能使用目前寄存器表3-2尋址方式及相應的尋址存儲器范圍尋址方式尋址存儲器范圍立刻尋址程序存儲器ROM直接尋址片內(nèi)RAM低128B,特殊功能寄存器寄存器尋址工作寄存器R0?R7,A,C,DPTR,AB寄存器間接尋址片內(nèi)RAM低128B,片外RAM變址尋址程序存儲器相對尋址程序存儲器
ROM(@A+DPTR,@A+PC)ROM(相對尋址指令的下一指令PC值加—128?+127)位尋址片內(nèi)RAM的20H?2FH字節(jié)地點中所有的位,可位尋址的特殊功能寄存器組,因此使用前需要經(jīng)過對PSW申的RS1RS0位的狀態(tài)進行設置;(2)直接尋址:尋址范圍為內(nèi)部RAM包括低128位用戶RAM區(qū)和高128位專用寄存器;(3)寄存器間接尋址:尋址范圍為內(nèi)部RAM氐128位,外部RAM64KB(低256單元能夠使用DPTR和R0R1作為間接尋址寄存器,而其他單元只能用DPTR[乍為間接尋址寄存器);(4)立刻尋址:直接給出立刻數(shù),不波及尋址空間;(5)變址尋址:只對程序寄存器進行尋址;(6)相對尋址:以PC的內(nèi)容為基值,加上指令機器代碼中‘相對地點’形成新的PC值轉(zhuǎn)移;(7)位尋址:尋址空間包括內(nèi)部RAM位尋址區(qū)(20?2FH)和專用寄存器的可尋址位。要接見片外程序存儲器和片外數(shù)據(jù)存儲器,應采用哪些尋址方式?答:接見片外程序存儲器采用變址尋址方式,片外數(shù)據(jù)存儲器采用寄存器間接尋址方式,且用DPTR能夠接見64KB,而用R0或許R1只可接見低256字節(jié)。5.在AT89S51片內(nèi)RAM中,已知(30H)=38H,(38H)=40H,(40H)=48H,(48H)=90H。請剖析下面各是什么指令,說明源操作數(shù)的尋址方式及按次序履行每條指令后的結(jié)果。答:指令指令說明源操作數(shù)尋址方式結(jié)果專業(yè).資料.整理完美.格式.編寫MOVA,40H將內(nèi)部RAM中40H內(nèi)容傳直接尋址送到累加器A中MOVRO,A(A)—(40H)再將A中內(nèi)容傳送給R0寄存器尋址(R0)—(A)MOVP1,將立刻數(shù)0F0H送到P1口,立刻數(shù)尋址#0F0H即P1.4~P1.7位1,其余為0(P1)—0F0HMOV@R0,30直接尋址卜將30H中的內(nèi)容,傳放到以R0單元內(nèi)容為地點的單元中((R0))—(30H)MOVDPTR,將立刻數(shù)3848傳送給立刻數(shù)尋址#3848HDPTR數(shù)據(jù)指針MOV40H,38H(dptr)—3848H將內(nèi)部RAM中38H內(nèi)容傳送直接尋址到40H單元中(40H)—(38H)MOVR0,30H直接尋址將30H中的內(nèi)容給R0寄存器(R0)—(30H)MOVP0,R0將R0的內(nèi)容傳送到P0寄存器尋址(P0)—(R0)MOVA,@R0將R0內(nèi)容為地點的該單寄存器間接尋址元內(nèi)容傳送給A(A)—((R0))MOVP2,P1將P1的內(nèi)容傳送給P2直接尋址(P2)—(P1)指出下列指令的源操作數(shù)的尋址方式
(A)=48H(R0)=48H(P1)=0F0H((R0))=(48H)=38H(DPTR)=3848H(40H)=40H(R0)=38H(P0)=38H(A)=40H(P2)=0F0HMOVA,#65H立刻數(shù)MOVA,@R0尋址寄MOVA,R2存器間直接尋址MOVA,65HMOVCA,@A+PC變址尋址內(nèi)部RAM和特殊功能寄存器各用什么尋址方式?答:內(nèi)部RAM有寄存器尋址方式、直接尋址方式和間接尋址方式;特殊功能寄存器除A外只能進行直接尋址。已知:(A)=5BH(R1)=30H,(30H)=0CEH(P1)=71H,(PSW=80H,(PC=2000H,(205CH)=46H,(SF)=30H,(B)=78H。分別求各條指令履行后的結(jié)果(要求進行二進制運算考證)及標志位Cy、P的影響。專業(yè).資料.整理(A)=B7HP=0,C=0專業(yè).資料.整理
完美.格式.編寫(1)MOVA,@R1(A)=0CEHP=1,C不變(2)MOV40H,30H(40H)=0CEHP和C不變(3)MOVP1,R1(P1)=30HP和C不變(5)PUSHB(31H)=78H,(SP)=31HP和C不變(6)POPDPH(DPH)=0CEH,(SP)=29HP和C不變(7)XCHDA,@R1(A)=05EH,(30H)=CBHP=1,C不變(A)=29(8)ADDA,30HHADDCA,P1(10)SUBBA,P1(A)=E9HP=1,C=1(11)ANLP1,#0FH(P1)=01HP和C不變(12)CLRPSW.7C=0(14)ORLC,90HC=1,P不變A、RO和內(nèi)部RAM50H對下面一段程序加上機器碼和說明,并說明程序運行后寄存器51H52H單元的內(nèi)容。MOV50H,#50H755050;(50H)J50HMOVA,50HE550;(A)J(50H)MOVR0,AF8;(R0)J-(A)MOVA,#30H7430;(AJ30HMOV@R0AF6;((R0))J(A)MOVA,#50H7450;(AJ50HMOV51H,AF551;(51H)J(A)MOV52H,#00H755200;(52H)J00H:運行后寄存器(A)=50H,(R0)=50H,(50H)=30H,(51)=50H,(52H)=00H.區(qū)別下列各指令中20H的含義,在每條指令后加上說明。MOVA,#20H將20H立刻數(shù)傳送給AMOV45H,20H將內(nèi)部RAM中20H單元的內(nèi)容傳送到45H中MOVC,20H.0將內(nèi)部RAM中20H單元內(nèi)容的第0位(最低位)傳送給MOVC,20H將內(nèi)部RAM中20H位地點內(nèi)容傳送給C(4)MOVCA,@A+PC(A)=46HP=1,C不變RLCA答10完美.格式.編寫寫出達成以下功能的指令(1)將立刻數(shù)30H送到R1;(2)將內(nèi)RAM30中的數(shù)據(jù)送使P1.2與G相與,結(jié)果送G;立刻數(shù)45H93H進行邏輯與、或、異或操作;兩立刻數(shù)求和:1C0H+45H,結(jié)果按高低8位存在30H31H中。答案:(1)M0VR1,井30H(2)MOV78H,30H(3)MOV@R0,#30H(4)MOVP1,R2(5)MOVA,60H;;MOVP2,#0;MOVR0,#60H;MOVX@R0,AMOVA,60H;;MOVDPTR,#1060;MOVX@DPTR,AMOVA,#00HMOVDPTR,#1000HMOVCA,@A+DPTRMOV30H,ASETBACC.7ANLA,#0F0HANLC,p1.2與:MOVA,#45HANLA,#59H或:MOVA,#45HORLA,#59H異或:PMOVA,#45H專業(yè).資料.整理完美.格式.編寫XRLA,#59HCLRCMOVR2,#1MOVA,#0C0HADDA,#45HMOV31H,AMOVA,R2ADDCA#0MOV30HA寫出下列指令履行過程中堆棧的變化設堆棧初值為X:MOVR6,#11H(SP)=X(堆棧不變)MOVR7,#23H(SP)=X(堆棧不變)ACALL200H(SP)=X+2;(X+1)=第4條指令的首址PC低8位(X+2)=第4條指令的首址PC高8位POP50H(SP)=X-1POP51H(SP)=X-2SJMP$ORG200HRET答:履行過程中,前面兩條為立刻尋址指令,堆棧不變;履行第三條ACALL指令時,首先將程序寄存器PC的目前值加2,接著先后將PC的低八位和高八位分別進棧,(SP)=(SP)+2;然后再將PC內(nèi)容中的低11位用200H來替代,同時程序跳到第七條ORG200H中,接著RET表示子程序返回,將原先壓入堆棧的PC值彈出,(SP)=(SP)-2;最后兩條POP指令履行后將SP所指地點中的內(nèi)容賦給50H,SP減1后再將SP所指地點中的內(nèi)容賦給51H,SP內(nèi)容再減1給SP,最后程序結(jié)束。請寫出能實現(xiàn)下列功能的程序段:(1)一個16位數(shù)據(jù),高低字節(jié)分別放在20H和21H中,試將該數(shù)乘以2MOVA,21HCLRCRRCAMOV21H,AMOVA,20HRRCAMOV20H,A(2)16位二進制數(shù)由高位到低位放在30H和31H單元,將其內(nèi)容加1;MOVA,31HADDA,#01HMOV31H,A專業(yè).資料.整理完美.格式.編寫MOVA,30HADDCA,#00HMOV30H,A(3)將DPTF中的數(shù)據(jù)減5;CLRCMOVA,DPLSUBBA,#05HMOVDPL,AMOVA,DPHSUBBA,#00HMOVDPh,A有3個位變量X,Y,Z,請編寫程序?qū)崿F(xiàn)Y=X+YZ的邏輯關系式。XBIT30HYBIT31HZBIT32HMOVC,YANLC,Z專業(yè).資料.整理完美.格式.編寫MOV20H,CMOVC,XORLC,20HMOVY,C14.將一個按高低字節(jié)寄存在21H20H中的一個雙字節(jié)乘以2后,再按高低次序?qū)⒔Y(jié)果存放到22H、21H20H單元ORG0STAR:CLRCMOV20H,#0E2H;設低字節(jié)的數(shù)據(jù)是E2HMOV21H,#0F3H;設高字節(jié)的數(shù)據(jù)是F3HMOVA,20HMOVB,#2HMULABMOV20H,AMOV23H,BMOVA,21HMOVB,#2HMULABADDCA,23HMOV21H,AMOV22H,BSJMP$END15.試編程,將片外RAM1000H~1050H單元的內(nèi)容置為55H=MOVP2,#10HMOVR0#00HMOVA,#55HMOVX@R0,AMOVR0,#50HL0:MOVX@R0,ADJNZR0,L0SJMP$END16.試編程統(tǒng)計數(shù)據(jù)區(qū)長度的程序,設數(shù)據(jù)區(qū)從片內(nèi)RAM30H單元開始,該數(shù)據(jù)區(qū)以0結(jié)束,專業(yè).資料.整理完美.格式.編寫統(tǒng)計結(jié)果放入2FH中。MOVR0,#30HL0:MOVA,@R0JZL1INCR1INCR0SJMPL0L1:MOV2FH,R1專業(yè).資料.整理完美.格式.編寫17.試編寫程序,將片外RAM2000H~200FH數(shù)據(jù)區(qū)中的數(shù)據(jù)由大到小排列起來。ORG0LO:MOVP2,#20HMOVR0,#00HMOVR7,#0FHCLRFOLOOP:MOVXA,@R0MOV31H,AINCROMOVXA,@R0CLRCCJNEA,31H,L1L1:JCL2DECR0MOVX@R0,AMOVA,31HINCR0MOVX@R0,ASETBF0L2:DJNZR7,LOOPJBF0,L0SJMP$END若晶振頻次位6MHZ試計算下面延時子程序的延時時間;1個機器周期DELAY:MOVR7,#0F6H;1個機器周期LP:MOVR6,#0FAH;2個機器周期DJNZR6,$;2個機器周期DJNZR7,LPRET答:機器周期為2us,則有:[1+(1+2X250+2)X246+2]X2us=247482us試分別編寫延時20ms和1s的程序設晶振頻次為12M20ms:ORG0MOVR1,#102專業(yè).資料.整理完美.格式.編寫L1:MOVR0,#48L2:NOPNOPDJNZR0,L2NOPDJNZR1,L1NOPNOPNOPNOPNOPNOPNOPEND1s:----------------------------------------ORG0MOVR2,#50LO:MOVR1,#100L1:MOVR0,#49L2:NOPNOPDJNZR0,L2NOPDJNZR1,L1DJNZR2,L0SJMP$END20.試編寫利用調(diào)用子程序的方法延時1min的程序。ORG0HMOVR2,#60A0:LCALLDLYDJNZR2,A0SJMP$DLY:MOVR2,#50L0:MOVR1,#100L1:MOVR0,#49專業(yè).資料.整理完美.格式.編寫L2:NOPNOPDJNZR0,L2NOPDJNZR1,L1DJNZR2,L0RET21.用查表程序求0?6之間的整數(shù)的立方。已知整數(shù)存在A中,查表結(jié)果存入片內(nèi)中。RAM31ORG0MOVA,#DATAMOVDPTR,#TABMOVCA,@A+DPTRMOV30H,ASJMP$TAB:DB0,1,8,27,64,125,216END若立方數(shù)超過一個字節(jié),在兩個字節(jié)以內(nèi),由以下程序?qū)崿F(xiàn)。ORG0000HMOVA,#5RLAMOVR0,AMOVDPTR,#TABMOVCA,@A+DPTRMOV31H,A;高位MOVA,R0INCAMOVCA,@A+DPTRMOV30H,A;低位SJMP$TAB:DW0,1,8,27,64,125,216END22.編寫程序,查找在內(nèi)部RAM的30H~50H單元中出現(xiàn)FFH的次數(shù),并將查找結(jié)果存入單元。51HMOVR1,#00HMOVR0,#30HMOVR2,#21HL0:MOVA,@R0CJNEA,#0FFH,L1INCR1L1:INCR0DJNZR2,L0MOV51H,R1專業(yè).資料.整理完美.格式.編寫SJMP$END23.試用子程序求多項式:Y=(A+B)2+(B+C)2(要求:兩數(shù)之和不能超過16)XEQU30H;X代表AYEQU31H;Y代表BZEQU32H;Z代表CFEQU33H;F中寄存計算結(jié)果YMOVR1,XMOVR2,YLCALLL0MOVR3,AMOVR1,YMOVR2,ZLCALLL0ADDA,R3MOVF,ASjmp$L0:MOVA,R1ADDA,R2MOVB,AMULABRETend已知(60H)=33H,(6伯)=43H,試寫出程序的功能和運行結(jié)果。ORGOOOOhMOVR0,#61HMOVR1,#70HACALLCRRSWAPAMOV@R1,ADECROACALLCRRXCHDA,@R1SJMP$CRR:MOVA,@R0CLRCSUBBA,#30hCJNEA,#0AH,NEQAJMPBIGNEQ:JCCEN專業(yè).資料.整理完美.格式.編寫B(tài)IG:SUBBA,#07HCEN:RET該程序的運行結(jié)果是:(60H)=33H,(61H)=43H,(70H)=C3H25.內(nèi)部RAM的30H單元開始寄存著一組無符號數(shù),其數(shù)目寄存在21H單元中。試編
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年中國水泵軸承塑料保持架市場調(diào)查研究報告
- 2024年中國整體型不銹鋼門花市場調(diào)查研究報告
- 2024年中國異形拉絲模具市場調(diào)查研究報告
- 2024年中國子彈頭式不銹鋼真空杯市場調(diào)查研究報告
- 2024年中國園林綠地護欄市場調(diào)查研究報告
- 幼兒園筍課程設計
- 2024年中國HDPE粘合襯市場調(diào)查研究報告
- 撥叉ca6140課程設計831005
- 2024至2030年中國銀行智能回單系統(tǒng)行業(yè)投資前景及策略咨詢研究報告
- 小班美術感恩節(jié)課程設計
- 智能垃圾桶經(jīng)營項目商業(yè)計劃書
- 水表施工組織方案
- 馬克思主義新聞思想智慧樹知到課后章節(jié)答案2023年下河北大學
- 住宅小區(qū)電氣智能化設計研究
- 華文版書法五年級下冊 第9課 集字練習-集思廣益 教案
- 人教版四年級數(shù)學上冊四年級數(shù)學上冊典型例題系列之第4單元:“買幾送幾”促銷問題專項練習(解析版)人教版
- 學校(幼兒園)食堂餐廚廢棄物處理記錄表
- 高數(shù)1-7章總復習
- 諸葛亮人物介紹PPT
- 冀教版小學數(shù)學二年級上冊第四單元綜合素質(zhì)達標含答案
- 宇電溫控器ai 500 501用戶手冊s 6中文說明書
評論
0/150
提交評論