




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验一 熟悉键盘操作及数传指令编程设计一、 实验目的1.熟悉软件模拟调试的环境及键盘操作。2.掌握汇编语言程序设计的方法,加深对指令的理解。3.学会软件模拟调试和察看修改观察项的方法。二、实验内容印证数据传送指令的功能、寻址方式以及PC指针、SP指针、DPTR指针、Ri指针分别对代码段、堆栈段、外扩数据存储器段、位寻址区等不同存储器的访问方式。三、实验步骤1.进入调试软件环境,输入源程序;2.汇编源程序;3.用单步方式运行程序;4.检查并记录各寄存器和存储单元内容的变化。四、程序清单内部RAM数据传送需要查看的数据有30H,31H,A,R0等。ORG0000HMOVR0,#30H(R0)←30HMOV30H,#45H(30H)←45HMOV31H,#46H(31H)←46HMOVR2,30H(R2)←45HMOV02H,31H(02H)←46HMOVA,#87H(A)←87HMOV0E0H,30H(A)←45HMOV30H,A(30H)←45HMOV31H,@R0(31H)←45HSJMP$END最终结果 :(30H) ←45H (31H) ←45H (A) ←45H (R0) ←30H外部数据传送需要查看的数据有外部数据存储器单元2000H,外部程序存储器单元2001H。ORG0000HMOV
A,#89H
(A)←89HMOV
DPTR,#2000H
设DPTR指针地址MOVX@DPTR,A(2000H)←89HINCDPTR(DPTR)←2001HCLRA(A)←0MOVCA,@A+DPTR(A)←78HSJMP$ORG2000HDB44HDB78HDB 67HEND最终结果 :(2000H) ←89H (2001H) ←78H堆栈操作需要查看的数据有50H、51H、A及SP指针和堆栈区中数据随PUSH和POP指令执行后的变化情况和数据的存放次序等。可用于保护现场和恢复现场的程序ORG0000HMOVSP,#5FH设栈顶指针地址MOV50H,#3BH(50H)←3BHMOV51H,#2FH(51H)←2FHMOVA,#12H(A)←12HPUSH50H入栈(60H)←3BHPUSH51H(61H)←2FHPUSHACC(62H)←12HPOP0E0H出栈(0E0H)←12HPOP51H(51H)←2FHPOP50H(50H)←3BHSJMP$END可用于数据交换的程序ORG0100HMOVSP,#6FH设栈顶指针地址MOV50H,#3BH(50H)←3BHMOV51H,#2FH(51H)←2FHPUSH50H入栈(70H)←3BHPUSH51H(71H)←2FHPOP50H出栈(50H)←2FHPOP51H(51H)←3BHSJMP$END数据交换记录每条指令运行后的结果,从而加深对各种不同的交换指令的理解。ORG0000HMOVA,#58H(A)←58HSWAPA(A)=85HMOV40H,A(40H)←85HMOVA,#30H(A)←30HMOVR0,#30H(R0)←30HMOV@R0,#09H(30H)←09HXCHDA,@R0(A)=39H(30H)=00HMOV50H,#1(50H)←01HMOVA,#89H(A)←89HXCHA,50H(50H)=89H(A)=01HMOVR7,#3(R7)←03HXCHA,R7(A)=03H(R7)=01HXCHA,@R0(30H)=03H(A)=00HSJMP$END五、思考题1.寄存器寻址与寄存器间接寻址有什么区别?答:寄存器是将操作数存放在寄存器中,得到了寄存器就得到了操作数.寄存器间接寻址是将指令指定的寄存器内容作为操作数的地址.该地址所指定的单元内容作为被寻找的操作数.寄存器间接寻址用@R0(0,1)或@DPTR表示,以区别寄存器间接寻址.2.PC指针与SP指针有什么区别?答:PC是一个16位的程序地址寄存器,其内容是当前执行指令的下一条指令在程序地址寄存器的地址,寻址范围达64KB,PC具有自动加一的功能。PC单元本身没有地址,是不可寻址的,用户无法对其进行读写。在堆栈时,SP指针用来存放栈顶地址。SP指针为8位,在片内128B内的RAM中开辟栈区,并随跟踪栈顶地址。SP初始化为07H,只有在进行堆栈操作时,SP指针才会变化。在进行入栈操作时,SP指针自动加1,然后将操作数存入SP指针所指地址。当进行出栈操作时,SP指针将操作数弹入所选地址,然后自动减 13.DPTR指针与Ri(R0,R1)指针有什么区别?答:用Ri(0,1)指针可以寻址片内 RAM低128B,用DPTR作为间接寻址器, 可寻址片外数据存储器的 64KB区域。Ri(0,1)与P2配合使用时,用 Ri(0,1)指示低8位地址。P2口输出高 8位地址。可寻址片外数据存储器或 I/O的64KB的区域,DPTR指针还可以访问外部 ROM和扩展I/O接口时的地址。4.立即寻址与直接寻址有什么区别?答:立即寻址:指令直接给出操作数;直接寻址:指令中直接给出操作数所在的单元地址或位地址。同一个特殊功能寄存器不同表达形式。答:在直接寻址时,寄存器ACC可以表示为ACC、OEOH,Cy、0D7H、PSW.7、0D0H.7都可以表示 Cy,PSW可以表示为 0D0H。实验二 数传指令和算数运算指令编程设计一、 实验目的1.掌握数据块的传送操作和算术运算指令的应用。2.进一步掌握汇编语言设计和调试方法。3.掌握观察窗口的使用方法。4.学会给存储单元赋初值的方法。二、实验内容1.数据区传送1)把内部RAM40H~4FH置初值0A0H~0AFH;2)而后把40H~4FH内容传送到外部RAM9800H~980FH中;3)再把9800H~980FH内容传送到50H~5FH中。.多字节十进制加法加数放在30H开始的单元中(最低位放在30H,按从小到大的顺序存放),被加数和结果存放在20H开始的单元(最低位在20H中),字节数放在2FH中,最高进位位放在位地址7FH单元中。三、 实验步骤1.分别用单步和连续运行方式,调试上述两个程序;2.在执行第二个程序之前,给被加数和加数单元赋初值;3.在观察窗口中观察结果。四、 实验程序清单1.数据块传送程序:ORG0000HMAIN:MOVR0,#40H(R0)←40HMOVR2,#10H(R2)←10HMOVA,#0A0H(A)←0A0HA1:MOV@R0,A(40H)←0A0HINCR0(R0)=41HINCA(A)←0A1HDJNZR2,A1循环指令,循环16次,(A)=0A0H(A)=0B0H(R0)=50HMOVR0,#40H(R0H)←40HMOVDPTR,#9800H设DPTR指针地址MOVR2,#10H(R2)←10HA2:
MOVA,@R0MOVX@DPTR,AINCR0INCDPTRDJNZR2,A2MOV R0,
#50H
(A)←0A0H(9800H)←0A0H(R0)←41H(DPTR)=9801H循环指令(980FH)=0A0FH
(A)=0B0H(R0)=50HA3:
MOVDPTR,#9800HMOVR2,#10HMOVXA,@DPTRMOV@R0,AINCDPTRINCR0DJNZR2,A3
(DPTR)=9800H(R2)←10H(A)←0A0H(50H)←0A0H(DPTR)=9801H(R0)=51H循环 16次,
(A)=0AFH(5FH)=0AFH(R0)=60H
(DPTR)=9810HSJMP$END2.多字节十进制加法:先赋初值:(30H)=03H (31H)=02H (32H)=01H(20H)=02H (21H)=04H (22H)=07HORG0000HMAIN:MOVR0,#30H(R0)←30HMOVR1,#20H(R1)←20HMOV2FH,#04H(2FH)←04H,为4字节数CLRCCY清零DA1:MOVA,@R0(A)←03HADDCA,@R1(A)←(A)+(20H)DAA进行十进制调整MOV@R1,A(20H)←05HINCR0(R0)=31HINCR1(R1)=21HDJNZ2FH,DA1循环4次,(20H)=05H(21H)=06H(22H)=08H(R0)=34H(R1)=24HMOV7FH,CC记录最高进位位(7FH)=0SJMP$END五、思考题1.若两个数据块都在外部数据存储器中,如何实现数据块的传送?要用寄存器间接寻址。指令为 MOVDPTR,#1010HMOVA,@DPTRMOV@R0,A指令时将 1010H内容送入R0内容所在地址2.在调试第一个程序时,若不用程序给 40H~4FH赋初值,而用键盘在 CPUDATA区给40H~4FH单元预赋初值,如何做?打开“视图”菜单,选择“存储器窗口” ,弹出存储器对话框,在 MEMORY2地址栏中键入“D:0X00”回车,建立内部数据存储器的观察窗口。找到 40H—4FH所在位置,分别双击40H—4FH所在位置,当有光标出现时,用键盘输入初值。3.若把第二个程序改为无符号数的减法,怎样修改程序?ORG0000HMAIN: MOVR0,#30HMOVR1,#20HMOV2FH,#04HCLRCDA1: MOVA,@R0
;存入减数;存入被减数SUBBA,@R1DA AMOV@R1,AINCR0INCR1DJNZ2FH,DA1MOV7FH,CSJMP$END4.在第二个程序中,若两数的和存放到从 40H开始的单元,如何修改程序?ORG0000HMAIN: MOVR0,#30HMOVR1,#20HMOV2FH,#04HMOVDPTR,#40HDA1: MOVA,@R0ADDCA,@R1DA AMOVX@DPTR,AINCR0INCDPTRDJNZ2FH,DA1MOV7FH,CSJMP$END实验三 逻辑运算及位操作指令编程设计一、实验目的(1) 熟悉字节逻辑运算指令功能。(2) 熟悉位操作指令运算功能。(3)从而更深入的掌握汇编语言程序设计。(4)学会观察 CPU窗口中BIT区的变化。二、实验内容存入
1.字节逻辑运算程序在片内RAM的FIRST和SECOND单元中各有一符号数RESULT单元中(设运算结果仍为 8位数)。
X和
Y,要求按下列条件算出
Z,X+Y X为正奇数X∧Y X为正偶数Z=X∨Y X为负奇数X∨Y X为负偶数FIRST EQU 30HSECOND EQU 31HRESULT EQU 32HORG 0000HSTART :MOV R0,FIRSTMOV
A
,
R0JB
ACC.7,NEGMOV
B,#2DIV
ABMOV
A,BJZ
TEMP1MOV
A,R0ADD
A,SECONDSJMP RESTEMP1:MOV A,R0ANL A,SECONDSJMP RESNEG:CPL ACC.7MOV B,#2DIV ABMOV A,BJZ TEMP2MOV A,R0ORL A,SECONDSJMP RESTEMP2:MOV A,R0XRL A,SECONDRES:MOV RESULT,ASJMP $END.位操作程序布尔电路图如下:BIT00HBIT01HBIT02HBIT03HORG0000HSTART:MOVC,Z(C)←02HANLC,/Y(C)=02H利用ANL与ORLMOVF,C(03H)←02HMOVC,Y(C)←01H来产生异或的效果ANLC,/Z(C)=01HORLC,F(C)=03HMOVF,C(F)←03HMOVC,X(C)←00HANLC,Y(C)=00HORLC,/F(C)=0FCHMOVF,C(F)←0FCHSJMP$END运算结果为(03H)=0FCH3.拆字程序把外部数据存储器2000H单元的内容拆开,其高四位送2001H低四位,低四位送2002H低四位,2001H、2002H高四位清零。需要检查2000H、2001H和2002H单元的内容。程序清单ORG0000HMOVDPTR,#2000H
(DPTR)←2000HMOVXA,@DPTR
(A)←18HMOVB,ASWAPA
(B)←18H(A)=81HANLA,#0FHINCDPTR
(A)=01H(DPTR)=2001HMOVX@DPTR,A
(2001)
←01HINCDPTR
(DPTR)=2002HMOVA,BANLA,#0FHMOVX@DPTR,A
(A)←18H(A)=08H(2002)=08HSJMP$END最终结果:(2000)=18H(2001)=01H(2002)=08H开始2000H内容送A高低位交换,屏蔽高位后送2001H2000H内容送A屏蔽高位后送 2002H结束程序框图4.拼字程序把外部数据存储器 2000H、2001H单元的低四位分别送 2002H高低四位。需要察看开始2000H内容送A,屏蔽高位高低位交换,送 B2001H
内容送
A,屏蔽高位A和
B或后送
2002H2000H、2001H
和
结束2002H单元内容。程序框图:程序清单ORG0000HMOVDPTR,#2000H
(DPTR)←2000HMOVXA,@DPTR
(A)←18HANLA,#0FH
(A)=08HSWAPA
(A)=80HMOVB,A
(B)←80HINCDPTR
(DPTR)=2001HMOVXA,@DPTRANLA,#0FHORLA,BINCDPTRMOVX@DPTR,ASJMP$END
(A)←34H(A)=04H(A)=84H(DPTR)=2002H(2002)=84H三、
思考题1.字节与位逻辑运算指令在编程上什么区别?应注意什么?字节逻辑运算指令有 ANL,ORL,XRL,RL,RLC,RR,RRC,CLR,CPL。位逻辑运算指令有ANL,ORL,/bit, 并且位操作指令的操作数是字节中的某一位, 每位只取0或1,位操作指令只能用累加器 C.2.若把两位十六进制数转换成对应的
ASCII
码,应如何编写程序?ORG0000HMOVR0,#30HMOV37H,#02HCLRCDA1:MOVA,@R0CJNEA,#10,AA1: JCA3ADDA,#37HA2:A3:A4:
MOV@R0,AINCR0DJNE37H,DA1SJMPA4ADDA,#30HSJMPA2SJMP$END3.采用其它方法设计第一个程序。FIRST EQU 30HSECOND EQU 31HRESULT EQU 32HORG 0000HSTART :MOV R0,FIRSTMOV
A
,
R0JB
ACC.7,NEGMOVB,#2DIVABMOVA,BJNZTEMP1MOVA,R0JBACC.7,A1ANLA,SECONDSJMPRESA1:CPLACC.7XRLA,SECONDSJMPRESTEMP1:MOVA,R0JBACC.7,A2ADDA,SECONDSJMPRESA2:CPLACC.7ORLA,SECONDRES:MOVRESULT,ASJMP$END4.如何用断点方式调试本程序?在开始调试时用断点按钮和光标配合设定断点,然后在调试一栏选择执行到光标处实验四 代码转换一、实验目的1.掌握各种代码转换的算法,加深对各种数据编码的理解。2.学会软件模拟调试和察看修改观察项的方法来观察转换结果。一、 实验内容1.分析清楚个程序的功能。2.调试各种代码转换的程序。三、实验步骤1.进入调试软件环境,输入源程序;2.汇编源程序;3.用单步或全速方式运行程序;4.查看最终结果。四、程序清单1.十六进制数 ASCII 码将十六进制数据 08H,0CH转换成ASCII码,转换结果存入 30H,31H两个单元中,再将30H,31H两个单元中的数据分别增 1,然后转换成十六进制数存入 40H,41H两个单元中。ORG0000HMOVSP,#2FH设栈顶地址MOVA,#08H(A)←08HADDA,#30H(A)=38HPUSHACC入栈(30)=38HMOVA,#0CH(A)←0CHADDA,#37H(A)←43HPUSHACC入栈(31H)=43HMOVA,30H(A)←38HINCA(A)=39HCLRCCY清零SUBBA,#30H(A)=09HMOV40H,A(40H)←09HPOPACC出栈(A)=43HINCA(A)=44HSUBBA,#37H(A)=0DHMOV41H,A(41H)←0DHPOPACC出栈(A)=38HSJMP$END最终结果:(30H)=38H(31H)=43H(40H)=09H(41H)=0DH2.二进制数BCD码将二进制数10011011B转换成BCD码数,存入30H和31H单元中;再将30H单元中的数据加16H后,转换成二进制数据,存入40H单元中。ORG0000HMOVA,#10011011B(A)=98HMOVB,#100(B)=64HDIVAB(A)=01H(B)=37HMOV30H,A(30H)←01HMOVA,B(A)←37HMOVB,#10(B)=0AHDIVAB(A)=05H(B)=0AHSWAPA(A)=50HORLA,B(A)=55HMOV31H,A(31H)=55HMOVA,30H(A)=01HADDA,#16H(A)=17HDAA十进制调整PUSHACC(08H)=17HANLA,#00001111B(A)=07HMOV40H,A(40H)=07HPOPACC(A)=17HANLA,#11110000B(A)=10HSWAPA(A)=01HMOVB,#10(B)=0AHMULAB(A)=0AH(B)=00HADDA,40H(A)=11HMOV40H,A(40H)=11HSJMP$END最终结果:(30H)=01H(31H)=55H(40H)=11H3.BCD码ASCII码将20H单元中压缩的BCD码数78H转换成ASCII码,转换结果存入30H,31H两个单元中,再将30H,31H两个单元中的数据分别增1,然后转换成压缩BCD码数存入21H单元中。ORG0000HMOVA,20H(A)←78HANLA,#00001111B(A)=08HADDA,#30H(A)=38HMOV30H,A(30H)←38HPUSHACC(08H)=38HMOVA,20H(A)←78HANLA,#11110000B(A)=70HSWAPA(A)=07HADDA,#30H(A)=37HMOV31H,A(31H)←37HINCA(A)=38HCLRCCY清零SUBBA,#30H(A)=08HMOVR2,A(R2)←08HPOPACC(A)=38HINCA(A)=39HCLRCCY清零SUBBA,#30H(A)=09HSWAPA(A)=90HORLA,R2(A)=98HMOV21H,A(21H)←98HSJMP $END最终结果:(21H)=98H5.自选程序设计六、 思考题如何查看上面三个程序的结果。第一个程序:调试时,打开“视图”菜单,选择“存储器窗口”,弹出存储器对话框,在MEMORY2地址栏中键入“ D:0X00”回车,建立内部数据存储器的观察窗口。找到30H,31H,40H,41H所在位置,打开“调试”菜单,选择单步,按 F10键,随着指针的变化,观察 30H,31H,40H,41H内容的变化。第二个程序,第三个程序步骤同第一个程序。2. 在程序1中,如果十六进制数未指定是否包含A~F数码,程序应如何修改?ORG0000HMOV SP,#2FHCLR CLCALLA0PUSHACCMOV A,30HINC ACLR CLCALLA4MOV 40H,APOPACCINC ALCALLA4MOV 41H,ASJMP $A0: CJNEA,#10,A1A1: JCA3ADDA,#37HA3: ADDA,#30HRETA4: CJNEA,#40H,A5A5: JCA6SUBBA,#30HRETEND在程序2中,如果要转换的二进制数是十六位的,程序应如何编写?十六进制数转换成ASCII码与BCD码数转换成ASCII码有何区别?十六进制数转化时需要以十为标准确定给这个数加 30H还是37H,而BCD码的转换不必进行判断,直接加 30H即可实验五 移位操作一、实验目的:掌握移位操作的方法,并理解左移或右移与乘除法运算的关系。二、实验内容:1.双字节二进制数左移一位将两个内部RAM31H和30H单元中的内容组成的双字节数通过Cy左移一位。功能示意图31H 30HCy程序清单ORG0000HCLRCY清零MOVA,30H(A)←12HRLCA(A)=24HMOV30H,A(30H)←24HMOVA,31H(A)←23HRLCA(A)=46HMOV31H,A(31H)←46HSJMP$END双字节数2312H左移一位后变成4624H2.多字节二进制数右移一位将三个内部RAM32H、31H和30H单元中的内容组成的三字节数通过Cy右移一位。功能示意图32H31H30HCy程序清单ORG0000HCLRCCY清零MOVA,32H(A)←45HRRCA(A)=22HCY=1MOV32H,A(32H)=22HMOVA,31H(A)←23HRRCA(A)=91HMOV31H,A(31H)←91HMOVA,30H(A)←12HRRCA(A)=89HCY=0MOV30H,A(30H)←89HSJMP$END三字节数452312H右移一位后变成229189H三、思考题1.多于三个字节的移位操作如何进行?设有N个字节ORG0000HMOV20H,#NHMOVDPTR,#30HCLRCA1:MOVXA,@DPTRRRCAMOVX@DPTR,AINCDPTRDJNE20H,A1SJMP$END2.如果不通过 Cy如何移位?实现的功能有何不同?将RLC、RRC命令更改为RL、RR命令通过CY移位会影响CY标志位,不通过CY移位,不会影响CY标志位。实验六 分支程序设计一、 实验目的进一步熟悉MCS-51指令系统,了解汇编语言程序设计的基本结构。掌握分支结构程序设计的方法。学会用条件转移指令、CJNE、JMP及其配合使用来编写二分支、三分支和多分支程序。二、 实验内容二分支的条件转移程序设变量X存放于R0,函数值Y存放在R1,其中X、Y均为二进制数。试按照下式的要求给Y赋值:1 X>0Y= 0 X=0-1 X<0程序框图2-1如下:开始A←(R0)Y=0?NY(A)>0?NN(A)=1(A)=-1(A)→(R1)结束图2-1 二、三分支结构程序流程图自选题目设计三、实验步骤1.根据实验内容和参考程序流程图,编出相应的分支结构程序。2.输入程序,汇编成功;3.用F4(执行到光标处)、F7(跟踪执行)、F8(单步执行)或断点运行等方式调试程序;4.观察程序的流程,记录运行结果。四、思考题1.CJNE指令对CY有影响吗?用 CJNE和JC/JNC答:指令前,若变址 255怎么办?对CY有影响,若目的操作数大于等于源操作数,则置1。在配合使用前要注意 CY是否清 0。如果变址位的值
指令配合应注意什么?在用 JMPCY置0,若小于源操作数,则>255,则需要修改 DPTR的高82.用什么指令可以实现多分支之间的隔离?答:无条件转移指令与标号段配合使用,可以使得程序在多分支程序之间跳转。条件转移指令余标号段配合使用也可以实现五、实验报告要求写出题目运行结果。六、参考程序清单1、二分支的条件转移程序1) 用二分支结构程序实现:ORG
0000HMOV A,R0JZ LOADJNB ACC.7
,GO
;等于零转;大于零转
LOADGOMOV A,#0FFHSJMPLOADGO: MOV A,#01HLOAD: MOV R1,ASJMP $END2)用三分支结构程序实现:ORG 0000HMOV A,R0JNZ COMP ;不等于零转 COMPMOVR1,#00H;等于零,则0(R1)SJMPMP3COMP:CJNER0,#80H,MP1;(R0)中数与80H比较,不相等则转移到MP1MOVR1,#0FFH;若比较相等,则-1(R1)LJMPMP3MP1:JCMP2;两数不相等,(R0)>0转MP2MOVR1,#0FFH;(R0)<0,-1(R1)LJMPMP3MP2:MOVR1,#01H;(R0)>0,1(R1)MP3:SJMP$END实验七 循环程序设计一、实验目的1.进一步熟悉 MCS-51指令系统,了解汇编语言程序设计的基本结构。2.掌握循环结构程序设计的方法,弄清单重及多重循环控制过程。二、
3.通过设计软件延时程序,学会计算内外循环次数以及循环体的循环时间。实验内容1.设计一个循环程序具体要求:将内部 RAM中30H至32H的内容右移四位,程序流程图如图 2-3所示。2.设计循环程序:冒泡法排序。具体要求:设单片机 8031外部RAM从3600H单元开始存放 10个无符号数,试编写程序能使它们按从大到小的顺序排列(最大数存放在 3600H单元)。程序流程图如图 2-4所示。3.自选题目设计。三、 实验步骤1.输入预先编好的程序,汇编成功;2.用自动单步方式执行程序,观察循环计数器的变化情况。3.用断点运行方式调试排序程序,记录排序过程。四、实验报告要求1.编出相应的循环结构程序,列出程序清单,并且会计算循环体的循环时间。2.写出自选题目的设计内容、程序清单及运行结果。五、思考题1.程序中循环时间由什么来控制?答:由循环计数器和条件转移指令来控制循环执行次数,从而控制循环时间2.若用DJNZ或CJNE指令来控制循环,编写程序有什么不同?答:用DJNZ来控制循环,必须已知循环次数。在程序开头要设置循环次数,在未知循环次数的条件下要用 CJNE,当满足CJNE的条件时,循环结束,否则循环继续。六、参考流程图开始4 (R7)(R6)CY30H(R0)((R0)) (A)右移(A)一次((R0))(R0)+1(R0)N(R6)-1=0?YN(R7)-1=0?Y结束图2-3循环结构程序流程图七、循环结构程序参考清单:1.三个字节右移四位:ORG0000HMOVR7,#4RR30:MOVR6,#3CLRCMOVR0,#30HRR31:MOVA,@R0RRCAMOV@R0,AINCR0DJNZR6,RR31DJNZR7,RR30SJMP$END初值为:(30H)=12H(31H)=23H(32H)=34H运算结果为: (30H)=01H(31H)=23H(32H)=33H冒泡法排序:ORG0000HMOVPSW,#00HMOVP2,#36HMOVR2,#10-1LOOP0:MOVR0,#00HMOVR1,#01HMOV03H,R2CLR7FHLOOP1:MOVXA,@R0MOV30H,AMOVXA,@R1CJNEA,30H,LOOP2SJMPL1LOOP2:JCL1MOVX@R0,AXCHA,30HMOVX@R1,ASETB7FHL1:INCR0INCR1DJNZR3,LOOP1JNB7FH,LOOP3DJNZR2,LOOP0LOOP3:SJMP$END开始置地址指针,置外循环计数器置内循环地址指针,置内循环计数器 Y清零交换标志位( 7FH)←0N取两操作数前数≥后数Y交换两数,置 1交换标志位(7FH)←1NY内循环结束Y7FH)=1?外循环结束结束实验八 查表程序设计一、实验目的1.进一步熟悉
MCS-51
指令系统和汇编语言程序设计。2.学会用
MOVC
指令编写查表程序。二、实验内容1.设计并调试一个查平方表的程序,其功能为应用查表指令 MOVCA累加器A中数的平方值,结果平方值送 A。要求待查的( A)≤15。
,@A+PC,求2.设计并调试一个根据电压值查与其对应的温度值的查表程序,其功能为应用查表指令MOVCA,@A+DPTR,求(A)中电压值对应的温度值,将温度值送R2R3(温度值为二字节的压缩BCD码),电压值的范围为(A)≤0FFH。实验程序参考框图如2-5所示。三、实验步骤1.敲入程序和预定表后;2.通过修改自变量参数启动并调试程序,直至正确为止。3.边调试边体会用 PC或DPTR作指针查表的区别。开始表首地址 (DPTR)A)+(A)+(DPTR)(DPTR)0 (A)查表取第一个字节 (R2)(A)DPTR)+1(DPTR)查表取第二个字节 (R3)结束图2-5 查表程序框图四、 实验报告要求根据实验内容和程序参考流程,编出所需查表程序,列出实验程序清单。五、思考题1.当表的长度〉255个字节时应选哪一条指令查表?答:应选用“
MOVA,@A+DPTR
”指令,并且需要对
DPH,DPL
进行运算处理,求出表头地址2.用
PC指针查表编程时应注意什么?答:要注意对其进行修正,指令为“
ADDA,#DATA”,DATAP
为PC
当前值与表头地址的差值,DATA=表头地址—PC当前值六、参考程序清单1.求平方值查表程序:ORG0000HADD A,#02HMOVC A,@A+PCSJMP$DB0,1,4,9,16,25DB36 ······225END当执行“MOVC A,@A+PC”指令时,由于 PC指针指向“SJMP$”,SJN$为双字节指令,PC地址与A的平方的地址差2个字节,因此需要修正,但由于DPTR可以直接指向目的地址,因此不需要修正。2.测量温度查表程序:R2初值为02HORG0000HMOVDPTR,#TABCLRCCY清零MOVR0,A(R0)←02HADDA,R0(A)=04HMOVF0,C(F0)←0ADDA,DPL(A)=22HMOVDPL,A(DPL)←22HADDCA,DPH(A)=00H(AC)=0MOVC,F0(C)=0ADDCA,#0(A)=00HMOVDPH,A(DPTR)=0022HCLRA(A)=0MOVCA,@A+DPTR查第一个字节(A)=00HMOVR2,A(R2)←00HCLRA(A)=0INCDPTR(DPTR)=0023HMOVCA,@A+DPTR查第二个字节(A)=05HMOVR3,A(R3)←05HSJMP$TAB:DW1213589END查表结果为: 5实验九
散转程序设计一、
实验目的1.进一步熟悉
MCS-51
指令系统和汇编语言程序设计。2.学会用三种不同的方法设计散转程序,并掌握它们的区别。二、 实验内容设计并调试一个程序,其功能为根据( 20H)的值i(i≤7)取相应的处理程序
Pi的入口地址并转移到程序 Pi,Pi的处理程序的功能为( Ri)+1→(Ri),[(20H)+1]^7 (20H),再重复地根据(20H)散转。参考程序框图如图 2-6所示:三、实验步骤1.输入编好的程序,汇编成功;2.调试程序,使用修改寄存器的方法,使点运行,运行一个循环后检查运行结果, 观察
R0—R7初值为0,然后启动系统,带断R0—R7是否依次计数,排除程序中错误,直至
R0—R7同步计数为止。四、实验报告要求1.列出根据流程图编写的程序清单,写出程序执行的结果。2.采用另外两种不同的方法编写程序,列出调试通过的程序清单。开始0 (20H)根据(20H)查转移地址 (DPTR)0→ ( A )根据(DPTR)散转(R0)+1→0(R0)(R1)+1→(R1)7(R7)+1→(R7)120H)+1→(20H)(20H)^7→ (20H)图2-6
散转程序框图五、参考程序清单方法一:ORG
0000HTB0:
MOVMOV
20HDPTR
,#00H,#TABLMOV
R0,20HTABL:
MOVADDADDMOVMOVJMP
A,R0A,R0A,DPTRDPTR,AA@A+DPTRAJMPAJMP
,PR0PR1
#00HAJMPPR2AJMPPR3AJMPPR4AJMPPR5AJMPPR6AJMPPR7PR0 : INC R0LJMP PRPR1: INC R1LJMP PRPR2: INC R2LJMP PRPR3: INC R3LJMP PRPR4: INC R4LJMP PRPR5: INC R5LJMP PRPR6: INC R6LJMP
PRPR7:
INC
R7PR
:
MOV
A,20HINC
AANL
A
,#07HMOV
20H
,ALJMP TB0SJMP $END运算结果为:(R0)=1
(20)=01H方法二:ORG
0000HMOV 20HMOV A,20HTB0: MOV DPTRMOV A,R0ADD A,R0JNC NADDNADD: MOV R3,AMOVC A,@A+DPTRXCH A,R3INC AMOVC A,@A+DPTRMOV DPL,AMOV DPH,R3MOV AJMP @A+DPTRTABL: DWPR0DWPR1
,
,#00H,#TABL#00HDWPR2DWPR3DWPR4DWPR5DWPR6DWPR7PR0 : INC R0LJMP PRPR1: INC R1LJMP PRPR2:INCR2LJMPPRPR3:INCR3LJMPPRPR4:INCR4LJMPPRPR5:INCR5LJMPPRPR6:INCR6LJMPPRPR7:INCR7PR:MOVA,20HINCAANLA,#07HMOV20H,ALJMPTB0SJMP$实验十 子程序设计一、实验目的1 .进一步熟悉 MCS-51指令系统和汇编语言程序设计。.掌握子程序设计及参数传递的方法。.掌握子程序调用与返回时堆栈的变化与作用。二、实验内容.根据参考流程框图2-7,使用工作寄存器或累加器来传递参数的方法把入口参数放到累加器 A中,然后将累加器中的一个十六进制数的 ASCⅡ字符转换为一位十六进制数存放于 A。.用指针寄存器来传递参数,将(R0)和(R1)指出的内部RAM两个3字节无符号整数相加,结果送(R0)指出的内部RAM中,入口时,(R0)(R1)分别指向加数和被加数的低位字节,出口时(R0)指向结果的高位字节。3 .用堆栈传递参数,把一位十六进制数转化为 ASCⅡ码子程序(主程序用 PUSH指令,已把参数压入堆栈) 。参考程序框图如 2-7图所示:开始0 CA)—30H(A)(A)10? YN(A)—7 (A)返回图2-7ASCII 码字符转换为十六进制数框图四、实验报告要求画出实验内容中 2和3的程序流程图,并列出三个题目的主—子程序清单。五、思考题1、使不同种参数传递方法实现子程序调用的异同是什么?答:一用累加器和工作寄存器传递参数:将数据通过工作寄存器和累加器传送,即在调用子程序之前把数据送入寄存器或者累加器,调用以后就用这些寄存器或者累加器中的数据进行操作,子程序执行以后,结果仍由寄存器或累加器送回。二用指针寄存器来传递参数:调用时,参数传递只通过R0,R1,DPTR来传递。调用结束时,子程序运算的结果也可以存放在内存单元中,传回来的也只是存放有这些单元地址的寄存器。三用堆传递参数:在调用前,先要把传送的参数压入堆栈,进入子程序之后,在讲压入堆栈的参数弹出到工作寄存器或者其他内存单元。2、ACALL和LCALL指令有什么区别?使用时应注意什么?答:ACALL指令为二字节指令。指令中提供八位地址,与 PC当前值的高五位共同组成16位目标地址。LCALL指令为三字节指令, 指令中提供 16位子程序入口地址送入 PC,可以调用64KB范围的子程序。使用时应注意要先设 SP指针地址。3、RET指令的功能是什么?答:子程序调用返回指令,要用在子程序末尾。六、参考程序清单1.用累加器和工作寄存器传递参数子程序清单:ORG 0000HXADATA40HMOV A,XAACALLASCHMOV XA,ASJMP$ASCH : CLR CSUBB A ,#30H ; 入口参数放在 ACC中CJNE A ,#10,$+3JC AH10SUBB A ,#07HA10 : RETEND3.用指针寄存器来传递参数子程序清单:ORG 0000HMOV R0,#30HMOV R1,#40HACALL NADDNADD:MOVR7,#3;用R0、R1传递参数CLRCNADD1:MOVA,@R0ADDCA,@R1MOV@R0,ADECR0DECR1DJNZR7,NADD1INCR0RETEND开始置循环数,计数器清 0N(R0)→A (A)+(R1) →(A)(A) →(R0) (R0)-1 →(R0)(R1)-1 →(R1)Y判断R7-1是否为0(R0)-1 →(R0)返回三字节无符号数相加框图4.用堆传递参数子程序清单:ORG 0000HY1 DATA30HMOV SP,#50HMOV DPTR,#DBPUSH02HACALLHASCPOP YIHASC
:
MOV R0,SPDECDECXCHANLADDMOVCXCH
R0R0AAAAA
,@R0,#0FH,#2,@A+PC,@R0RETDBDB
‘0123456789’‘ABCDEF’END实验十一
P1
口及外部中断一、 实验目的1.掌握利用MCS-51单片机P1口实现I/O的三种传送方式。2.掌握MCS-51单片机外部中断源的原理和编程方法。3.了解MCS-51单片机处理外部中断的全过程。4.弄懂外部中断触发方式的选择。二、 实验要求熟练掌握结合 DP-51PROC单片机综合仿真实验仪和仿真调试。三、 实验内容及实验电路1、P1口无条件输出实验,电路图图 3-1所示。
KielC51
集成开发环境进行图3-1P1口无条件输出实验参考程序 1:8个LED 灯同时闪亮。ORG 8000HLJMP MainORG 80F0HMain:MOVR7,#0Loop:MOVR6,#0DJNZR6,$DJNZR6,$DJNZR6,$DJNZR6,$DJNZR7,LoopCPLP1.0;P1.0取反CPLP1.1;P1.1取反CPLP1.2;P1.2取反CPLP1.3;P1.3取反CPLP1.4;P1.4取反CPLP1.5;P1.5取反CPLP1.6;P1.6取反CPLP1.7;P1.7取反SJMPMainEND实验结果记录: 8个灯同时闪亮(亮: ●灭:○)●●●●●●●● ○○○○○○○○ ●●●●●●●●2、P1口条件输出实验,电路如图 3-2所示。图3-2P1口条件输出实验参考程序 2:ORG 8000HLJMP MainORG 8100HMain:JB P1.7,SETLEDCLRLED:CLR P1.0CLR P1.1CLR P1.2CLR P1.3CLR P1.4CLR P1.5CLR P1.6SJMP MainSETLED:SETB P1.0SETB P1.1SETB P1.2SETB P1.3SETBP1.4SETBP1.5SETBP1.6SJMPMainEND实验结果记录:(亮:●灭:○)SW1置0时,8个灯全亮●●●●●●●●SW1置1时,8个灯全灭○○○○○○○○3、P1口中断输入/输出实验,电路如图 3-3所示。图3-2P1口中断输入/输出实验参考程序 3:ORG 8000HLJMP MainORG 8003HLJMP INT0SVMain:MOVSETBSETBSETBSJMP
SP,#5FHEAIT0EX0$INT0SV:MOVMOVSWAPMOVRETIEND
P1,#0FFHA,P1AP1,A实验结果记录:(亮:●灭:○)SW1,SW2,SW3置0,按K1键,012456灯亮 ●●●●●●SW1,SW2,SW3置1,按K1键,012灯亮,456灯不亮 ●●●○○○四、 实验步骤实验内容 1:P1口无条件输出实验1. 断开DP-51PROC实验仪的电源,按图 3-1接线,使用排线将 A2区的J61接口与D1区的J52接口相连。接通DP-51PROC实验仪的电源,将TKSMonitor51仿真器上的工作模式选择开关拨到RUN处。1、建立名为 P1_wtjio工程,按实验参考程序 1编辑新文件,文件名为:然后编译,无误转换为调试方式,运行程序,观察并记录运行结果。实验内容 2:P1口条件输出实验
p1_wtj.asm。1、断开DP-51PROC实验仪的电源,按图D1区的J52接口相连,使用导线把 A2
3-2接线,使用排线将 A2区的P1.7与D1区J54的
区的SW1
J61接口与相连。2、接通DP-51PROC实验仪的电源,将TKSMonitor51 仿真器上的工作模式选择开关拨到RUN处。3、建立名为 P1_tjio工程,按实验参考程序后编译,无误转换为调试方式,预先将 SW1结果。实验内容 3:P1口中断方式输入 /输出实验
2编辑新文件,文件名为: p1_tj.asm。然置1或置0,运行程序,观察并记录运行1、断开DP-51PROC实验仪的电源,按图 3-3接线,使用导线将P12分别与D1区的SW1、SW2、SW3相连,使用导线把J53的KEY1(图3-3中的K1即为D1区的K1)相连。
A2A2
区的P10、P11、区INT0与D1区2、接通DP-51PROC实验仪的电源,将TKSMonitor51 仿真器上的工作模式选择开关拨到RUN处。3、建立名为P1_zdio工程,按实验参考程序3编辑新文件,文件名为:p1_zd.asm。然后编译,无误转换为调试方式,预先置好开关的状态,运行程序,观察中断的执行过程,并记录运行结果。五、 思考题1、如何将
P1
口无条件输出的实验,修改为将
8个
LED
发光二极管向左或向右循环点亮?ORG8000HLJMPMAINORG800BHMAIN: MOV P1,#0FFHMOV A,#07FHMOV P1,AACALL DELMAIN1:RL AMOV P1,AACALL DELSJMP MAIN1DEL: MOVR7,#0FFHDEL1:MOVR6,#0FFHDJNZR6,$DJNZR6,$DJNZR6,$DJNZR6,$DJNZR7,DEL1RETEND2、如何利用INT0中断使P1口控制8个LED发光二极管向左或向右循环点亮?电路如何修改?程序如何修改?ORG8000HLJMPMAINORG 8003HLJMPINT0SVMAIN:MOVSP,#5FHSETBEASETBIT0SETBEX0SJMP$INT0SV: MOVSP,#5FHCLREAPUSHACCPUSH01HSETBEAMOVP1,#0FFHMOVR1,#0AHLN: MOV A,#07FHMOV P1,AACALL DELMAIN1:RL AMOV P1,AACALL DELDJNZ R1,MAIN1CLREAPOP01HPOPACCSETBEARETIDEL: MOVR7,#0FFHDEL1:MOVR6,#0FFHDJNZR6,$DJNZR6,$DJNZR6,$DJNZR6,$DJNZR7,DEL1RETEND实验十二 定时器及中断(1秒基时)一、 实验目的1.通过实验了解定时器的工作原理、编程方法。2.通过实验了解定时器工作方式、定时与计数、单启动与双重启动的选择。3.掌握通过一个定时器加入软件计数产生 1S基时的方法。4.通过实验了解多个中断源申请中断的处理方法。二、 实验内容及实验电路及步骤1.产生1S延时的设计:(11.0592MHZ)方案1:定时器0定时加软件计数。1)采用定时器 0,方式1,定时50MS中断。当 1S时间到后,使 P1.0闪亮。一个机器周期为 =(1/11.0592Mhz)*12us 。定 时 器 0 的 定 时 初 值 =65536-50000/(1/11.0592Mhz*12us))=(65536-46080)=19456=4C00H软件计数:计数器采用 R2,计数20次。实验电路如图 3-4所示:用导线将 A2区的P10与D1区的LED1相连。图3-4 定时器0实验接线图参考程序:ORG8000HAJMPMAINORG800BHAJMPT0SMAIN: MOVSP,#60HMOVTMOD,#01HMOVTH0,#4CHMOVTL0,#00HMOVR2,#00HMOVIE,#10000010BSETBTR0CLRP1.0SJMP$T0S:MOVTH0,#4CHMOVTL0,#00HINCR2CJNER2,#20,NEXTCPLP1.0MOVR2,#00HNEXT:RETIEND实验结果记录:(亮:●灭:○)灯闪亮●○○○○○○○○○○○○○○○●○○○○○○○○○○○○○○○●○○○○○○○○○○○○○○○●○○○○○○○○○○○○○○○●○○○○○○○○○○○○○○○2)采用定时器0,方式1,定时50MS,查询方式,当1S时间到后,使P1.0闪亮。用导线将A2区的P10与D1区的LED1相连。参考程序:ORG8000HAJMPMAINMAIN:MOVTMOD,#01H;T/C0定时,方式1。MOVTH0,#4CH;T0定时50MS。MOVTL0,#00HMOVR2,#00H;软件计数器初值SETBTR0LOOP:JBCTF0,T0SSJMPLOOPT0S:MOVTH0,#4CHMOVTL0,#00HINCR2CJNER2,#20,NEXT;1S使P1.0取反一次。CPLP1.0MOVR2,#00HNEXT:SJMPLOOPEND实验结果记录:(亮:●灭:○)灯闪亮●○○○○○○○○○○○○○○○●○○○○○○○○○○○○○○○●○○○○○○○○○○○○○○○●○○○○○○○○○○○○○○○●○○○○○○○○○○○○○○○)采用GATE=1时,利用信号/INT0与TR0双重启动T/C0,产生1S延时。用导线将A2区的P10与D1区的LED1相连,用导线将A2区的INT0与D1区的SW1相连,运行相面程序前先将SW1置在0位,程序运行后将SW1置在1位,观察LED1的闪亮情况,然后将SW1再置在0位,LED1将停止闪亮,再SW1置在1位,重复前述步骤,观察GATA与/INT0引脚信号的作用。注意:调试前, SW1一定处于 0的位置。参考程序:ORG8000HAJMPMAINORG800BHAJMPT0SMAIN: MOVSP,#60HMOVTMOD,#09H ;T/C0 定时,方式 1,GATE=1。MOVTH0,#4CH ;T0 定时50MS,中断一次。MOVTL0,#00HMOVR2,#00H ; 软件计数器初值MOVIE,#10000010BSETBTR0CLRP1.0SJMP$T0S:MOVTH0,#4CHMOVTL0,#00HINCR2CJNER2,#20,NEXT;1S 使P1.0取反一次。CPLP1.0MOVR2 ,#00HNEXT:RETIEND实验结果记录:(亮:●灭:○)运行前将 SW1置0位,运行后置 1,则灯闪亮●○○○○○○○○○○○○○○○●○○○○○○○○○○○○○○○●○○○○○○○将SW1再置0位,灯停止闪亮●○○○○○○○●○○○○○○○
图3-5 定时器级联实验接线图●○○○○○○○●○○○○○○○●○○○○○○○再置1,则又闪亮●○○○○○○○○○○○○○○○●○○○○○○○○○○○○○○○●○○○○○○○方案2:采用T/C0与T/C1级联加软件计数的方法。)电路图如图3-5所示。接线方法:⑴断开DP-51PROC实验仪的电源,按图3-5接线,使用排线将 A2区的J61接口与D1区的J52接口相连,⑵使用导线把 A2区的P3.0与A2区T1(P3.5)相连。3)参考程序:ORG8000HLJMPMAINORG800BHLJMPTC0SVORG801BHLJMPtc1SVORG8100HMAIN:MOVSP,#70HMOVTMOD,#61HMOVTH1,#0FBHMOVTL1,#0FBHMOVTH0,#4CH;T0定时50MS,中断一次。MOVTL0,#00HSETBET1SETBET0SETBEASETBTR1MOVR2,#0SETBP3.0MOVMOVSJMP$TC1SV:
A,#0FHP1,AINCR2CJNER2,#2,NEXTMOVR2,#0CPLAMOVP1,ANEXT:RETITC0SV:MOVTH0,#4CHMOVTL0,#00HCPLP3.0RETIEND实验结果记录:(亮:●灭:○)●●●●○○○○○○○○●●●●●●●●○○○○○○○○●●●●●●●●○○○○○○○○●●●●
前四个灯与后四个灯交替闪亮2、计数器实验采用T/C0每计1个数,使 8个LED全部点亮。设计方案:采用 T/C0方式2,计数,每计 1个数中断一次,在中断服务程序中,点亮/熄灭8个LED。使用排线将 A2区的J61接口与D1区的J52接口相连,用导线将 A2区的T0与D1区的SW1相连,请自行画出电路。注意:调试前,SW1一定处于1的位置。参考程序:ORG8000HAJMPMAINMAIN:
ORG800BHAJMPT0SMOVSP,#60HMOVTMOD,#06HMOVTH0,#0FFH
;
;T/C0 定时,方式 2。计1个数,中断一次
.MOVTL0,#0FFHSETBET0SETBEASETBTR0MOVP1,#0FFHSETB00HSJMP$T0S: JNB00H,MIEP1MOVP1,#00HCLR00HRETIMIEP1:MOVP1,#0FFHSETB00HRETIENDSW1值灯况SW1值灯况0●●●●●●●●1○○○○○○○○1●●●●●●●●0●●●●●●●●0○○○○○○○○1●●●●●●●●1○○○○○○○○0○○○○○○○○0●●●●●●●●1○○○○○○○○1●●●●●●●●0●●●●●●●●0○○○○○○○○1●●●●●●●●三、思考题1、将实验十一思考题2的软件延时修改为采用T/C0的硬件延时。采用T/C0中断与/INT0中断方式实现8个LED循环点亮(左或右)。ORG8000HLJMPMAINORG8003HLJMPINTSVORG800BHLJMPTOSMAIN:MOVSP,#5FHMOVTMOD,#01HMOVTH0,#4CHMOVTL0,#00HMOVIE,#83HMOVA,#0FEHMOVR2,#00HSETBIT0SETBTR0SETBPX0CLRF0SJMP$TOS:MOVTH0,#4CH+4MOVTL0,#00H+4INCR2CJNER2,#255,NEXTJBF0,TOS1AAJMPTOS2TOS1:RLANOPTOS2:MOVP1,AMOVR2,#00HNEXT:RETIINTSV:CPLF0RETIEND2 、将实验 1中T/C0定时改为25MS,软件计数应该为多少?修改程序产生 1S。初值=65536-(25000*11.0592)/12=42496=0A600HORG8000HAJMPMAINORG800BHAJMPT0SMAIN: MOVSP,#5FHMOVTMOD,#01HMOVTH0,#A6HMOVTL0,#00HMOVR2,#00HMOVIE,#82HSETBTR0CLRP1.0SJMP$T0S:INCR2CJNER2,#40,NEXTCPLP1.0MOVR2,#00HNEXT:MOVTH0,#A6HMOVTL0,#00HRETIEND实验十三 A/D转换器ADC0809实验一、实验目的熟悉外部扩展的A/D转换器ADC0809的工作原理,学习使用并行模数转换芯片进行电压信号的采集和数据处理。二、实验设备及器件IBMPC机DP-51PROC数字万用表
单片机综合仿真实验仪
一台一台一台三、实验内容及实验电路通过片外总线方式访问并行模拟数字转换器芯片方法。可以实现单通道采集或8通道采集。电路如图
ADC0809,掌握模拟电压的通用采集3-5所示。图3-5ADC0809引脚接线图四、实验要求理解掌握ADC009的A/D转换原理和并行A/D转换器接口的编程方法,学会使用ADC0809并行模数转换器实现电压信号采集的方案设计。五、实验步骤1、单通道采集接线⑴使用2×10的排线连接D7区的J28接到A7区的J84;⑵将D2区10K电位器的左端金属孔通过导线连接到该区的GND金属孔,而右端金属孔通过导线连接到该区的VCC金属孔;⑶D2区10K电位器的中间金属孔连接到A7区的P2_IO2金属孔(IN0);⑷将A7区的P2_IO3~P2_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 应对财务压力的策略计划
- 网络编辑师主题策划研究试题及答案
- 有效的时间分配与优先级管理计划
- 推动持续学习与成长的理念计划
- 品牌风格与消费者心理计划
- 理财师考试问题解析的重要性研究试题及答案
- 理解国际金融理财师考试的金融体系试题及答案
- 人教部编版一年级下册7 操场上教案
- 落实食品安全主体责任日管控检查清单
- 网络编辑师证书考试各科目难度分析及试题及答案
- 湖北省武汉市六校联考2024-2025学年高二下学期4月期中考试化学试题(含答案)
- 大学英语四级考试2024年6月真题(第1套)阅读
- 第十五讲新时代与中华民族共同体建设2012- -中华民族共同体概论专家大讲堂课件
- 浙江2025年03月温州市龙湾区事业单位公开招考(选调)31名工作人员笔试历年典型考题(历年真题考点)解题思路附带答案详解
- 2025-2030冷轧行业市场发展分析及投资前景研究报告
- 新疆维吾尔自治区2024年中考数学试卷含真题解析
- 搅拌站安装施工方案
- 设备全生命周期管理办法
- 现场维保的安全措施、文明维保服务措施
- 初中地理教师培训课件粤人版(2024)初中地理教材简述
- 弘扬五四精神主题班会课件
评论
0/150
提交评论