单片机复习选择程序解释_第1页
单片机复习选择程序解释_第2页
单片机复习选择程序解释_第3页
单片机复习选择程序解释_第4页
单片机复习选择程序解释_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、填空1 .8051复位后,程序计数器PC中的内容是(0000H)。2 .8051的直接寻址方式的寻址空间是(片内RAM的低128B和SFR)。3 .CPU访问片内RAM的指令类型用(MOV)。4 .当CPU响应定时/计数器T1的中断时,(硬件将自动对TF1清0)。5 .指令(SETBTR1)用于启动8051的定时器T1。6 .8051复位后,P1状态是(0FFH)。7 .8051单片机系统的扩展RAM和I/O口是按(外部数据存储器统一)编址的。9 .如8051的SP的内容是30H,顺序执行PUSHACC和POPB两句指令后,(累加器A中的内容与寄存器B中的内容是一样的)。10 .指令MOVR1

2、,A与MOVXR1,A比较,(前一条指令的目的地址在片内RAM,后一条指令的目的地址在片外RAM)。11 .当执行指令时,PC中的内容总是指示出(将要执行的下一条指令地址)。13.将8031片外RAM某单元中的内容送累加器A,应采用(MOVXA,DPTR)这样的指令。19.如8051的SP的内容是30H,执行LCALLSUBRTN这样的指令后,当前寄存器SP中的内容为(32H)。21.8051产生中断时,CPU将自动将(中断入口地址)装入程序计数器PC中。22 .当CPU响应串行口发送中断时,(需用软件将TI清0)。25 .定时器T0设定为16位计数器定时方式,则T0应工作在(模式1)。26

3、.8051的(P2)口作为扩展片外数据存储器时16位地址总线中的高8位。41.改变(程序计数器PC)中的内容就可改变程序执行的方向。53 .CPU访问片外RAM的指令类型用(MOVX)。54 .当CPU响应定时/计数器T0的中断时,(硬件自动将当前PC值)压入堆栈。55 .定时器T1溢出标志位TF1,溢出时,硬件自动将TF1值变为1。A.B.溢出时,需用软件将TF1置1C.溢出时,硬件自动将TF1清0D.中断响应后必须用软件将TF1清056 .如果要P1作为输入口用,可以先用指令(MOVP1,#0FFH)对P1口进行操作。59.执行查表指令MOVCA,A+PC后,当前A中的内容是(执行该指令时

4、,当前指令下一条指令对应PC中的内容与原来A中的内容之和所指地址单元的内容)。61.在程序开始执行前,必须将其起始地址送入(程序计数器PC)。63 .将8031扩展程序存储器EPROM单元中常数送累加器A,应采用(MOVCA,A+DPTR)这样的指令。64 .为了使中断能正确返回,在中断子程序中(PUSH和POP)指令必须成对出现。65 .定时器T1工作在模式2计数方式,要求计3个脉冲就溢出,则计数初值为(FDH)。66 .8051的特殊功能寄存器可以用(直接寻址)方式进行访问。69.执行指令MOVCA,A+DPTR后,当前A中的内容是(DPTR的内容与原来A的内容之和所指地址单元的内容)。7

5、1 .执行调用指令LCALL后,(程序计数器PC)中的内容由硬件自动改变。72 .8051的寄存器间接寻址方式的寻址空间是(片内RAM的低128B和片外RAM)。73 .将8031累加器A中的内容送片外RAM某单元,应采用(MOVXDPTR,A)这样的指令。74 .当执行中断返回指令RETI时,(硬件自动将当前栈顶2字节内容)弹出,送程序计数器PC。75 .用指令(CLRTR0)可以让正在计数的定时器T0停止计数。76 .8051内部RAM位地址(08H)对应字节地址21H的最低一位。A.00HB.01HD.10H79.执行指令DJNZR1,TABL1,其描述是(R1中的内容减1如不等于零,程

6、序跳转到TABL1处执行)。18 .执行以下程序段MOVSP,#3AHMOVA,#20HMOVB,#30HPUSHACCPUSHBPOPACCPOPB后,A=(30H)和8=(20H)19 .假定(A)=83H,(R0)=17H,(17H)=34H,执行以下程序段ANLA,#17HORL17H,AXRLA,R0CPLA后,A的内容为CBH113 .设累加器A的内容为0C9H,寄存器R2的内容为54H,CY=1,执行指令SUBBA,R2后结果为(自行计算)114 .设(A)=0C3H,(R0)=0AAH,执行指令ANLA,R0后,结果(自行计算)116.提高单片机的晶振频率,则机器周期(变短)1

7、20.执行如下三条指令后,30H单元的内容是(0EH)MOVR1,#30HMOV40H,#0EHMOVR1,40H121.有如下程序段:MOVR0,#30HSETBCCLRAADDCA,#00HMOVR0,A执行结果是(30H)=01H)124.执行MOVIE,#81H指令的意义是:(开放外部中断源0)2132.如下程序段:CLRCMOVA,#BCHADDCA,#65H则其结果为(A)=(自行计算)C=()(自行计算)A、(A)=21HB、CY=1C、AC=1D、CY=0E、AC=0*1.写出下列指令执行的结果(1) .MOVA,#20HMOVR0,#20HMOVR0,AANLA,#0FHOR

8、LA,#80HXRLA,R0A=;R0=;(20H)=(2) .MOVDPTR,#2314HMOVR0,DPHMOV14H,#22HMOVR1,DPLMOV23H,#56HMOVA,R0XCHA,DPH执行以上指令后A=DPTR=(3) .MOVA,#50HMOVB,#77HPUSHACCPUSHBPOPACCPOPB执行完本段指令后(A)=(B)=2 .设内部RAM中59H单元的内容为50H,写出当执行下列程序段后寄存器A,R0和内部RAM中50H,51H单元的内容为何值?MOVA,59HMOVR0,AMOVA,#00HMOVR0,AMOVA,#25HMOV51H,AMOV52H,#70H3

9、 .已知(A)=83H,(R0)=17H,(17H)=34H。请写出执行完下列程序段后A的内容。ANLA,#17HORL17H,AXRLA,R0CPLA4 .试分析下列程序段,当程序执行后,位地址00H,01H中的内容为何值?P1的8条I/0线为何状态?CLRCMOVA,#66HJCLOOP1CPLCSETB01HLOOP1:ORLC,ACC.0JBACC.2,LOOP2CLR00HLOOP2:MOVP1,A5 .若A=11H,R0=33H,B=55H,(11H)=22H,(22H)=66H,(33H)=44H,在注释区写出分别执行下列指令后果的结果。写出每一行中参与计算的有关单元值,下同MO

10、VR1,A;MOVR3,#11H;MOVR0,#22H;MOVA,R0;MOVB,33H;MOV40H,R0;6 .若A=78H,R0=34H,(34H)=DCH,(56H)=ABH,Cy=1,求分别执行下列指令后A和Cy中的数据。(1) ADDCA,R0;(2) SUBBA,56H;(3) DECR0;(4) INC56H;7.若A=B7H,R0=5EH,(23H)=A1H,Cy=0,将分别执行下列指令的结果写在注释区。(1) ANLA,R0;(2) ORLA,#23H;(3) XRL23H,A;(4) RLCA;8,已知外RAM(2040H)=50H,ROM(2090H)=96H,内RAM

11、(20H)=85H,试求下列程序依次运行后有关单元中的内容。MOVDPTP,#2040H;MOVXA,DPTR;MOVCA,A+DPTR;ADDA,20H;DAA;SWAPA;10 .试求下列程序依次运行后有关单元中的内容。MOV20H,#A7H;MOVC,07H;ORLC,/H;CPL00H;SETB03H;MOVA,20H;RLCA;MOV20H,A;11 .已知:(60H)=23H,(61H)=61H,以下程序段执行后(62H)=CLRCMOVA,99AHSUBBA,60HADDA,61HDAAMOV62H,A12 .已知:(A)=02H,(SP)=40H,(41H)=FFH,(42H)

12、=FFH,以下程序段执行后(A)=.(SP)=.(41H)=.(42H)=(PC)=。POPDPHPOPDPLMOVDPTR,33000HRRAMOVB,AMOVCA,A+DPTRPUSHACCMOVA,BINCAMOVCA,A+DPTRPUSHACCRETORG3000HDB10H,80H,30H,50H,30H,50H13 .以下程序段执行后(A)=,(30H)=。MOV30H,#0A4HMOVA,#0D0HMOVR0,330HMOVR2,55EHANLA,R2ORLA,R0SWAPACPLAXRLA,#0FEHORL30H,A14 .已知(59H)=50H,以下程序段执行后(A)=,(5

13、0H)=,(51H)=,(R0)=。MOVA,59HMOVR0,AMOVA,#00MOVR0,AMOVA,225HMOV51H,AMOV52H,770H16 .若(R1)=30H,(A)=40H,(30H)=60H,(40H)=08H。试分析执行下列程序段后上述各单元内容的变化。MOVA,R1MOVR1,40HMOV40H,AMOVR1,#7FH17 .若(A)=E8H,(R0)=40H,(R1)=20H,(R4)=3AH,(40H)=2CH,(20)=0FH,试写出下列各指令独立执行后有关寄存器和存储单元的内容?若该指令影响标志位,试指出CY.AC.和OV的值。(1) MOVA,R0(2)

14、ANL40H,#0FH(3) ADDA,R4(4) SWAPA(5) DECR1(6) XCHDA,R119.MOVDPTR,#2000H(DPTR)=MOVA,#80H(A)=MOVXDPTR,A(2000H)INCDPTR(DPTR)=MOVA,#90H(A)=MOVXDPTR,A(2001H)MOVDPTR,#2000H(DPTR)MOVXA,DPTR(A)=MOVB,A(B)=INCDPTR(DPTR)=MOVXA,DPTR(A)=21.若(10H)=0FFH,(11H)=00H,(12H)=0FFH,(13H)=00H,写出每一步指令运行结果MOVA,10H(A)=?ANLA,#01

15、H(A)=?MOVA,11H(A)=?ORLA,#01H(A)=?MOVA,12H(A)=?XRLA,#01H(A)=?MOVA,13H(A)=?XRLA,#0AA(A)=?(10H)=,(11H)=,(12H)=,(13H)=22.MOV30H,#60HMOVR0,#60HMOVA,30HMOVB,AMOVR0,B(A)=,(RO)=,(B)=,23.MOVSP,#60HMOVA,#01H(A)=,MOVB,#02H(B)=,PUSHA(SP)=,PUSHB(SP)=,POPAPOPB(60H)=,25.设内部RAM(30H)=5AH,(5AH)=40H,(40H)=00H,端口P1=7FH

16、,问执行卜列指令后,各有关存储单兀(即R0,R1,A,B,P1,30H,40H及5AH单元)的内容如何?MOVR0,#30HMOVA,R0MOVR1,AMOVB,R1MOVR1,P1;R0=30H;A=5AH;R1=5AH;B=5AH;(5AH)=7FHMOVA,P1;A=7FHMOV40H,#20H;(40H)=20HMOV30H,40H;(30H)=20H26 .位地址为M.N.Y,程序如下:MOVC,M;(M)?CANLC,;(M)MOVY,C;(Y)=(M)MOVC,M;(M)?CANLC,N;(M)ORLCY;MOVY,C求程序功能表达式:27 .阅读下列程序并回答问题CLRCMOV

17、A,#9AHSUBBA,60HADDA,61H,DAAMOV62H,A请问该程序执行何种操作?28 .已知初值:(60H)=23H,(61H)=61H,请问运行程序后:(1).程序如下2506HM5:MOVSP,#58H;2509HMOV10H,0FH;250CHMOV11H,#0BH;250FHACALLXHD;2511HMOV20H,11H2514HM5A:SJMPM5AXHD:PUSH10HPUSH11HPOP10HPOP11HRET问:(1)执行POP10H后堆栈内容?(2)执行M5A:SJMPM5A后,(SP)=?29 .解读下列程序,然后填写有关寄存器内容(1) MOVR1,#48

18、HMOV48H,#51HCJNER1,#51H,00H(62H)=()?(20H)=?JNCNEXT1MOVA,#0FFHSJMPNEXT2NEXT:MOVA,#0AAHNEXT2:SJMPNEXT2累加器A=()(2) MOVA,#0FBHMOVPSW,#10HADDA,#7FH若PSW=00,当执行完上述程序段后,将PSW各位状态填入下表:PSWCYACF0RS1RS0OVF1P1101000131.设(RO)=7EH,DPTR=10FEH,片内RAM7FH和7FH两单元的内容分别是FFH和38H,INCINCINCINC请写出下列程序段的每条指令的执行结果。R0R0R0DPTRINCIN

19、CDPTRDPTR32 .设R0=20H,R1=25H,(20H)=80H,(21H)=90H,(22H)=A0H,(25H)=A0H,(26H)=6FH,(27H)=76H,下列程序执行程序后,结果如何?CLRCMOVR2,#3LOOP:MOVA,R0ADDCA,R1MOVR0,AINCR0INCR1DJNZR2,LOOPJNCNEXT1MOVR0,#01HSJMP$NEXT:DECR0SJMP$(20H)=.(21H)=一(22H)=.(23H)=.CY=A=.R0=_.R1=。33 .设片内RAM中(59H)=5OH,执行下列程序段MOVA,59HMOVR0,AMOVR0,AMOVA,#

20、25HMOV51H,AMOV52H,#70HA=,(50H)=,(51H)=,(52H)=36 .说明下列程序执行过程中,SP的内容以及堆栈中内容的改变过程。MOVSP,#20HMOVA,#20HMOVB,#30HPUSHACCPUSHBPOPACCPOPB37 .读程序,说明该程序完成的功能.(1).JMP:MOVDPTR,#TBJMOVA,R2ADDA,R2JNCNADDINCDPHNADD:JMPA+DPTRTBJ:AJMPPRG0AJMPPRG1AJMPPRGn(2).ADD:MOVR3,#0MOVR4,#0MOVR0,#50HLOOP:MOVA,R4ADDA,R0MOVR4,AINC

21、R0CLRAADDCA,R3MOVR3,ADJNZR2,LOOPRET36 .设内部RAM中59H单元的内容为50H,写出当执行下列程序段后寄存器A,R0和内部RAM中50H,51H单元的内容为何值?MOVA,59H10MOVR0,AMOVA,#00HMOVR0,AMOVA,#25HMOV51H,AMOV52H,#70H37 .已知(A)=83H,(R0)=17H,(17H)=34H。请写出执行完下列程序段后A的内容。ANLA,#17HORL17H,AXRLA,R0CPLA38 .使用位操作指令实现下列逻辑操作,要求不得改变未涉及位的内容。(1)使ACC.0置1;(2)清除累加器高4位;(3)

22、清除ACC.3,ACC.4,ACC.5,ACC.6。39 .试分析下列程序段,当程序执行后,位地址00H,01H中的内容为何值?P1口的8条I/0线为何状态?CLRCMOVA,#66HJCLOOP1CPLCSETB01HLOOP1:ORLC,ACC.0JBACC.2,LOOP2CLR00HLOOP2:MOVP1,40 .指出下列指令各是什么寻址方式?MOVA,diretMOVA,#dataMOVA,R0MOVA,R1参考答案:1. (1)A=A0HR0=20H(20H)=20H(2) A=23HDPTR=5614H(3) (A)=77H(B)=50H2. A=50HR0=50HA=00H(50

23、H)=00HA=25H(51H)=25H(52H)=70H3. A=C8H4. (00H)=1(01H)=1P1:011001115. (1)R1=11H11(2) R3=11H(3) (33H)=22H(4) A=44HB=44H(6) (40H)=33H6. (1)Y=55HCy=1(2) Y=CCHCy=1Y=DBHCy=1(4) Y=57HCy=17. (1)A=16H(2) A=B7H(3) (23H)=16H(4) A=6EHCy=19. DPTR=2040HA=50HA=96HA=1BHA=81HA=18H10. (20H)=A7HC=0C=1H20H的0位取反20H的3位置1A

24、=AEHA=5DH(20H)=5DH11. (62H)=38H12. (A)=05H(SP)=40H(41H)=30H(42H)=50H(PC)=4241H13. (A)=4EH(30H)=7EH14. (A)=25H(50H)=00H(51H)=25H(52H)=70H15. (1)MOVA,R0MOVR1,A(2) MOVR2,60H(3) MOVDPTR,#1000HMOVA,DPTRMOV60H,A(4) MOVDPTR,#1000HMOVA,DPTRMOVR2,A12(5) MOVDPTR,#1000HMOVXA,DPTRMOVDPTR,#2000HMOVXDPTR,A16. (R1)=7FH(A)=60H(30H)=08H(40H)=60H17. (1)(A)=2CH(2) (40H)=0H(3) (A)=22HCy=1Ac=1OV=0(4) (A)=8EH(5) (20H)=0EH(6) (A)=EFH(20H)=08H18. (A)=3BH(R0)=40H(40H)=00H(41H)=3BH(42H)=3BH(A)=10H(B)=10H(A)=10H(A)=20H(20H)=20H(A)=21H(21H)=21H(A)=22H22H)=22H19. (DPTR)=2000H(A

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论