资源描述:
《单片机分析程序》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、四、分析程序并填空()1.执行下列程序段后,(Pl)=—9BH—。MOVPl,#5DHCPLPl.lCPLPl.2CLRPl.6SETBPl.72.执行下列程序段后,(A)=_8BH,(Cy)=_不影响MOVA,#C5HRLA3.卜"列程序段执行后,(Ro)=—7FH,(7EH)=_00H_,(7FH)二_41HMOVR(),#7EHMOV7EH,#0FFHMOV7FH,#40HINC@R()INCRoINC@R()4.已知(SP)=60H,子程序SUBTRN的首地址为0345H,现执行位于012
2、3H的ACALLSUBTRN双字节指令后,(PC)=_0345H_,(61H)=—25H,(62H)=_01H_。5.阅读下列程序,说明其功能。MOVR0,#dataMOVA,@R()RLAMOVR),ARLARLAADDA,R)MOV@R0,ARET;(data)X1()操作6•改错1.MULRoRl乘法指令应使用A、B寄存器操作2.MOVA,@R7间接寄存器使用R7有误,间址寄存器只能使用R()、R13・MOVA,#3000H8位累加器A不能接受16位数据4.MOVC@A+DPTR,AMOVC
3、指令为对程序存储区操作指令,累加器的内容不可通过变址方式送入程序存储器,两操作数写反了。5.UMP#1()()()H长转移指令中的操作数为16位转移地址,不能用立即数的形式来表达。7.说明MCS-51单片机的下列各条指令中源操作数的寻址方式(可直接在每条指令后而书写)1.ANLA,20H直接寻址2.ADDCA,#20H立即寻址3.JZrcl相对寻址4.CLRC位寻址1.RRA寄存器寻址&下列各条指令其源操作数的寻址方式是什么?各条指令单独执行后,A屮的结果是什么?(5分)设(60H)=35H,((
4、A)=19H,(Ro)=30H,(30H)=OFH«(1)MOVA,#48H;寻址方式:立即寸•址((A)=48H(2)ADDA,60H;寻址方式:肓接寻址;((A)=4EH(3)ANLA,@R0:寻址方式:寄存器间接J址;((A)=09H9.阅读下列程序段,写出每条指令执行示的结果,并说明此程序段完成什么功能?(15分)MOVRi,#30H:(Ri)=30HMOVA,#64H;((A)=64HADDA,#47H;((A)=ABH(CY)=0(A(C)=0DAA;((A)=11H,(CY)=1(A
5、(C)=1MOV@R],A;(R))=30H,(30H)=11H此程序段完成的功能:(5分)求两个BCD码数(64H和47H)的和,并将结果放在内部RAM的30H单元。10.已知(RO)=20H,(20H)=10H,(P0)=30H,(R2)=20H,执行如下程序段后(40H)=MOV@RO,#11HMOVA,R2ADDA,20HMOVPSW,#80HSUBBA,P0XRLA,#45HMOV40H,A答:(20H)-11H((A)-20H((A)-((A)+(20)(CY)=1((A)-(P0)-
6、(CY)->((A)即((A)-OOH((A)+45H-((A)即((A)-45H(4011)—45H11.已知(RO)=20H,(20H)=36H,(21H)=17H,(36H)=34H,执行过程如下:MOVA,@R0MOVRO,AMOVA,@R0ADDA,21HORLA,#21HRLAMOVR2,ARET则执行结束(RO)=(R2)=答:((A)一((RO))((A)=36H(RO)-((A)(RO)j-36H((A)-((RO))((A)-34H((A)-((A)+(21H)34H+17H=
7、4BH((A)-((A)V21H4BHV21H=6BH((A)-D6H(R2)-D6H(RO)=36H(R2)=D6H12执行下而一段程序;MOVSP,#60HMOVA,#10HMOVB,#()1HPUSHAPUSHBPOPAPOPBA,B的内容是:(A)=(B)=答:((A)=01H((B)=10H13・设在31H单元存有#23H,执行下面程序:MOVA,31HANLA,#()FHMOV41H,AMOVA,31HANLA,#0F0HSWAPAMOV42H,A则(41H)=(42H)=答:(41H
8、)=03H(42H)=02H三•计算题(22分)14.((A)=3BH,执行ANLA,#9EH指令后,((A)=1AH(CY)=不受影响15.JNZREL为2B指令,放于1308H,转移目标地址是134AH,求偏移量REL=40H16.若((A)=C3H,(RO)=AAH,执行ADDA,R0后,((A)=6DH(CY)=1(OV)=1(A(C)=0177.若((A)=50H,((B)=A0H,执行MULAB后,((A)=00H((B)=32H(CY)=总为0(OV)=118.SJM